Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
PSELECT(2)		       System Calls Manual		      PSELECT(2)

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

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #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);

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 se-
     lect().   The  timeout argument in pselect() points to a const struct time-
     spec rather than the potentially modifiable  struct  timeval  used  by  se-
     lect();  as in select(), a null pointer may be passed to indicate that pse-
     lect() 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,  pse-
     lect()  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  in-
     terface, and for macros used to manipulate the fd_set data type.

RETURN VALUES
     The  pselect()  function  returns the same values and under the same condi-
     tions as select().

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

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").

HISTORY
     The pselect() function first appeared in FreeBSD 5.0.

AUTHORS
     The  first  implementation  of pselect() function and this manual page were
     written by Garrett Wollman <wollman@FreeBSD.org>.

FreeBSD ports 15.1		  July 2, 2022			      PSELECT(2)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=pselect&sektion=2&manpath=FreeBSD+15.1-RELEASE+and+Ports>

home | help