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 potentially 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.
If
newsigmask
is a null pointer,
pselect()
behaves like
select()
with no setting or restoration of the signal mask.
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.