logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

pselect — synchronous I/O multiplexing a la POSIX.1g

Authors

The first implementation of pselect() function and this manual page were written by Garrett Wollman <wollman@FreeBSD.org>. Debian August 16, 2013 PSELECT(2)

Description

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 conststructtimespec rather than the (modifiable) structtimeval 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.

Errors

The pselect() function may fail for any of the reasons documented for select(2) and (if a signal mask is provided) sigprocmask(2).

History

The pselect() function first appeared in FreeBSD 5.0.

Library

Standard C Library (libc, -lc)

Name

pselect — synchronous I/O multiplexing a la POSIX.1g

Return Values

The pselect() function returns the same values and under the same conditions as select().

See Also

kqueue(2), poll(2), select(2), sigprocmask(2), sigsuspend(2)

Standards

The pselect() function conforms to IEEE Std 1003.1-2001 (“POSIX.1”).

Synopsis

#include<sys/select.h>intpselect(intnfds, fd_set*restrictreadfds, fd_set*restrictwritefds, fd_set*restrictexceptfds, conststructtimespec*restricttimeout, constsigset_t*restrictnewsigmask);

See Also