05-03-2012
You are properly close-ing disconnected FD's, yes? If so, you don't need to worry -- FD numbers will be recycled eventually, long before the integer would wrap.
If you're not closing them, your process will soon hit the limit on how many file descriptors it can have open at once, which is going to be far less than the 4-billion limit 32-bit integers have.
10 More Discussions You Might Find Interesting
1. IP Networking
Requirements:
A server program should read a file and send the message to the client . if the file is not there, then switch to the receive part of the same program and receive any messages from the socket. If no messages to receive then switch to send part of the program to... (2 Replies)
Discussion started by: Rajeshsu
2 Replies
2. Programming
I ran degugger in C++ and the followings are the message I got:
Program received signal SIGABRT, Aborted.
0x002a57a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
(gdb) info s
#0 0x002a57a2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1 0x002e97f5 in raise () from /lib/tls/libc.so.6... (1 Reply)
Discussion started by: napapanbkk
1 Replies
3. Programming
Dear all,
I used debugger from C++ and these are the message I got:
Program received signal SIGSEGV, Segmentation fault.
0x00323fc0 in free () from /lib/tls/libc.so.6
(gdb) info s
#0 0x00323fc0 in free () from /lib/tls/libc.so.6
#1 0x00794fa1 in operator delete () from... (5 Replies)
Discussion started by: napapanbkk
5 Replies
4. Shell Programming and Scripting
Hi,
I would like to write a program to receive the GPS data and then send the data via network to other program.
All of the program is not write yet(include host and sender)
All of the server OS is unix or linux
Could you mind to give me some idea to do this?
Thanks so much!
Ken
... (2 Replies)
Discussion started by: kenlok
2 Replies
5. AIX
Hello,
One of our customer is getting segmentation fault when he runs his shell script which invokes our executable on AIX 6.1.
On AIX 5.3, there were no issues.
Here is the truss output.
811242: __loadx(0x0A040000, 0xF0D3A26C, 0x00000000, 0x00000009, 0x00000000) = 0xF026E884... (0 Replies)
Discussion started by: erra_krishna
0 Replies
6. AIX
Hi to all,
i am trying to make mksysb backup of a NIM client machine from NIM master and while i am reading that the backup is done successfully i get an error message below and it doesnt exit the smit screen. also the status of the command appears to be running.
is there anybody who knows why... (3 Replies)
Discussion started by: omonoiatis9
3 Replies
7. Programming
I am making a command line program in C using XCode. When running the program, it initially does what it is supposed to do (asks me for a file path). However, when I type in a valid and existing file path, it gives me the following error:
Program received signal: “EXC_BAD_ACCESS”.... (6 Replies)
Discussion started by: mdonova33
6 Replies
8. Programming
in a single main() function,so need signal handling. Use Posix Message Queue IPC mechanism , can ignore the priority and other linked list message,to implement the scenario:
client:Knock Knock
server:who's there
client: Eric
Server:Eric,Welcome.
client:exit
all process terminated
... (1 Reply)
Discussion started by: ouou
1 Replies
9. Solaris
hi all
I am getting following error while taking backup
using the command
ufsdump 0ubf 512 /dev/rmt/0cbn /database/backup2/rman_backup/level0 >> /database/backup2/backup_tape/level0_rman_06sep12 2>&1;
from the log i got the error
bash# tail -f level0_rman_06sep12
DUMP: Date of... (3 Replies)
Discussion started by: nikhil kasar
3 Replies
10. Programming
I am trying to learn C and while trying out some code, the program is getting aborted while I am calling free().
Here is the code:
#include <stdlib.h>
#include <stdio.h>
void print_by_ptr(char **str) {
printf("<%s>\n",*str);
printf("Now I am modifying the str.\n");
*str =... (3 Replies)
Discussion started by: chacko193
3 Replies
CLOSE(2) BSD System Calls Manual CLOSE(2)
NAME
close -- delete a descriptor
SYNOPSIS
#include <unistd.h>
int
close(int fildes);
DESCRIPTION
The close() call deletes a descriptor from the per-process object reference table. If this is the last reference to the underlying object,
the object will be deactivated. For example, on the last close of a file the current seek pointer associated with the file is lost; on the
last close of a socket(2) associated naming information and queued data are discarded; on the last close of a file holding an advisory lock
the lock is released (see further flock(2)).
When a process exits, all associated file descriptors are freed, but since there is a limit on active descriptors per processes, the close()
function call is useful when a large quantity of file descriptors are being handled.
When a process forks (see fork(2)), all descriptors for the new child process reference the same objects as they did in the parent before the
fork. If a new process is then to be run using execve(2), the process would normally inherit these descriptors. Most of the descriptors can
be rearranged with dup2(2) or deleted with close() before the execve is attempted, but if some of these descriptors will still be needed if
the execve fails, it is necessary to arrange for them to be closed if the execve succeeds. For this reason, the call ``fcntl(d, F_SETFD,
1)'' is provided, which arranges that a descriptor will be closed after a successful execve; the call ``fcntl(d, F_SETFD, 0)'' restores the
default, which is to not close the descriptor.
RETURN VALUES
Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and the global integer variable errno is set to
indicate the error.
ERRORS
The close() system call will fail if:
[EBADF] fildes is not a valid, active file descriptor.
[EINTR] Its execution was interrupted by a signal.
[EIO] A previously-uncommitted write(2) encountered an input/output error.
SEE ALSO
accept(2), execve(2), fcntl(2), flock(2), open(2), pipe(2), socket(2), socketpair(2)
STANDARDS
Close() conforms to IEEE Std 1003.1-1988 (``POSIX.1'').
4th Berkeley Distribution April 19, 1994 4th Berkeley Distribution