#include <sys/time.h>#include <signal.h>


Go to the source code of this file.
Data Structures | |
| struct | fd_set |
| File descriptor set structure for select and pselect. More... | |
Defines | |
| #define | _ABLE_CLIB_SYS_SELECT_H 1 |
| #define | FD_SETSIZE 32 |
| Maximum number of file descriptors in fd_set. | |
| #define | NFDBITS (8 * sizeof(fd_mask)) |
| Number of bits per entry in fd_set. | |
| #define | __FDS_BITS(set) ((set)->fds_bits) |
| #define | __FDELT(x) ((x) / NFDBITS) |
| #define | __FDMASK(x) ((fd_mask) 1 << ((x) % NFDBITS)) |
| #define | FD_ZERO(fdsetp) |
| Clear the FD set pointed to by fdsetp. | |
| #define | FD_SET(fd, fdsetp) (__FDS_BITS(fdsetp)[__FDELT(fd)] |= __FDMASK(fd)) |
| Set a file descriptor in a fd set. | |
| #define | FD_CLR(fd, fdsetp) (__FDS_BITS(fdsetp)[__FDELT(fd)] &= ~__FDMASK(fd)) |
| Clear a file descriptor in a fd set. | |
| #define | FD_ISSET(fd, fdsetp) ((__FDS_BITS(fdsetp)[__FDELT(fd)] & __FDMASK(fd)) != 0) |
| Check if a file descriptor is set in a fd set. | |
Typedefs | |
| typedef unsigned long | fd_mask |
| Define the fd_mask type for the entries in fd_set. | |
Functions | |
| int | select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout) |
| Wait for an event on one or more file descriptors in a set. | |
| int | pselect (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, const struct timespec *timeout, const sigset_t *sigmask) |
| Wait for an event on one or more file descriptors in a set. | |
| #define __FDELT | ( | x | ) | ((x) / NFDBITS) |
| #define __FDMASK | ( | x | ) | ((fd_mask) 1 << ((x) % NFDBITS)) |
| #define __FDS_BITS | ( | set | ) | ((set)->fds_bits) |
| #define _ABLE_CLIB_SYS_SELECT_H 1 |
| #define FD_CLR | ( | fd, | |||
| fdsetp | ) | (__FDS_BITS(fdsetp)[__FDELT(fd)] &= ~__FDMASK(fd)) |
Clear a file descriptor in a fd set.
| #define FD_ISSET | ( | fd, | |||
| fdsetp | ) | ((__FDS_BITS(fdsetp)[__FDELT(fd)] & __FDMASK(fd)) != 0) |
Check if a file descriptor is set in a fd set.
| #define FD_SET | ( | fd, | |||
| fdsetp | ) | (__FDS_BITS(fdsetp)[__FDELT(fd)] |= __FDMASK(fd)) |
Set a file descriptor in a fd set.
| #define FD_SETSIZE 32 |
Maximum number of file descriptors in fd_set.
| #define FD_ZERO | ( | fdsetp | ) |
Value:
do { \ unsigned int __bit; \ fd_set *__arr = (fdsetp); \ for (__bit = 0; __bit < sizeof(fd_set) / sizeof(fd_mask); ++__bit) \ __FDS_BITS(__arr)[__bit] = 0; \ } while (0)
| #define NFDBITS (8 * sizeof(fd_mask)) |
Number of bits per entry in fd_set.
The name is dictated by convention rather than standard.
| typedef unsigned long fd_mask |
Define the fd_mask type for the entries in fd_set.
Convention dictates that both the type, as unsigned long, and the name as fd_mask.
| int pselect | ( | int | nfds, | |
| fd_set * | readfds, | |||
| fd_set * | writefds, | |||
| fd_set * | exceptfds, | |||
| const struct timespec * | timeout, | |||
| const sigset_t * | sigmask | |||
| ) |
Wait for an event on one or more file descriptors in a set.
Wait for events to occur on the file descriptors listed in readfds writefds and exceptfds, returning the set of events which have occurred. A timeout can be provided to limit how long to wait for events.
| nfds | The Maximum number of file descriptors to examine. | |
| readfds | The set of file descriptors to examine for read readyness. | |
| writefds | The set of file descriptors to examine for write readyness. | |
| exceptfds | The set of file descriptors to examine for exceptions. | |
| timeout | The length of time to wait for an event or NULL for no timeout. | |
| sigmask | Signal mask to set during call. |
| int select | ( | int | nfds, | |
| fd_set * | readfds, | |||
| fd_set * | writefds, | |||
| fd_set * | exceptfds, | |||
| struct timeval * | timeout | |||
| ) |
Wait for an event on one or more file descriptors in a set.
Wait for events to occur on the file descriptors listed in readfds writefds and exceptfds, returning the set of events which have occurred. A timeout can be provided to limit how long to wait for events.
| nfds | The Maximum number of file descriptors to examine. | |
| readfds | The set of file descriptors to examine for read readyness. | |
| writefds | The set of file descriptors to examine for write readyness. | |
| exceptfds | The set of file descriptors to examine for exceptions. | |
| timeout | The length of time to wait for an event or NULL for no timeout. |
1.5.6