Answer Posted / chaitanya
The best way to do this is with the select() call. This tells the kernel to let you know when a socket is available for use. You can have one process do i/o with multiple sockets with this call. If you want to wait for a connect on sockets 4, 6 and 10 you might execute the following code snippet:
fd_set socklist;
FD_ZERO(&socklist); /* Always clear the structure first. */
FD_SET(4, &socklist);
FD_SET(6, &socklist);
FD_SET(10, &socklist);
if (select(11, NULL, &socklist, NULL, NULL) < 0)
perror("select");
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
What is the difference between a socket and a port?
Is socket a hardware or software?
What is active unix domain sockets?
What is af_inet in socket?
What is a socket connection?
What is the difference between SO_REUSEADDR and SO_REUSEPORT?
What is a deep well socket?
What is a sae socket?
Is a socket a file?
How does unix socket work?
How do unix sockets work?
How can I force a socket to send the data in its buffer?
What is socket programming in java?
What is socket address?
Is there any advantage to handling the signal, rather than just ignoring it and checking for the EPIPE error? Are there any useful parameters passed to the signal catching function?