pselect -- synchronous I/O multiplexing a la POSIX.1g
Standard C Library (libc, -lc)
#include <sys/select.h>
int
pselect(int nfds, fd_set * restrict readfds, fd_set * restrict writefds,
fd_set * restrict exceptfds,
const struct timespec * restrict timeout,
const sigset_t * restrict newsigmask);
The pselect() function was introduced by IEEE Std 1003.1g-2000
(``POSIX.1'') as a slightly stronger version of select(2). The nfds,
readfds, writefds, and exceptfds arguments are all identical to the analogous
arguments of select(). The timeout argument in pselect() points to
a const struct timespec rather than the (modifiable) struct timeval used
by select(); as in select(), a null pointer may be passed to indicate
that pselect() should wait indefinitely. Finally, newsigmask specifies a
signal mask which is set while waiting for input. When pselect()
returns, the original signal mask is restored.
See select(2) for a more detailed discussion of the semantics of this
interface, and for macros used to manipulate the fd_set data type.
The pselect() function is implemented in the C library as a wrapper
around select().
The pselect() function returns the same values and under the same conditions
as select().
The pselect() function may fail for any of the reasons documented for
select(2) and (if a signal mask is provided) sigprocmask(2).
kqueue(2), poll(2), select(2), sigprocmask(2)
The pselect() function conforms to IEEE Std 1003.1-2001 (``POSIX.1'').
The pselect() function first appeared in FreeBSD 5.0.
The pselect() function and this manual page were written by Garrett
Wollman <[email protected]>.
FreeBSD 5.2.1 June 16, 2002 FreeBSD 5.2.1 [ Back ] |