Function nix::sys::select::pselect

source ·
pub fn pselect<'a, 'fd, N, R, W, E, T, S>(
    nfds: N,
    readfds: R,
    writefds: W,
    errorfds: E,
    timeout: T,
    sigmask: S,
) -> Result<c_int>
where N: Into<Option<c_int>>, R: Into<Option<&'a mut FdSet<'fd>>>, W: Into<Option<&'a mut FdSet<'fd>>>, E: Into<Option<&'a mut FdSet<'fd>>>, T: Into<Option<&'a TimeSpec>>, S: Into<Option<&'a SigSet>>, 'fd: 'a,
Expand description

Monitors file descriptors for readiness with an altered signal mask.

Returns the total number of ready file descriptors in all sets. The sets are changed so that all file descriptors that are ready for the given operation are set.

When this function returns, the original signal mask is restored.

Unlike select, pselect does not mutate the timeout value.

§Parameters

  • nfds: The highest file descriptor set in any of the passed FdSets, plus 1. If None, this is calculated automatically by calling FdSet::highest on all descriptor sets and adding 1 to the maximum of that.
  • readfds: File descriptors to check for read readiness
  • writefds: File descriptors to check for write readiness
  • errorfds: File descriptors to check for pending error conditions.
  • timeout: Maximum time to wait for descriptors to become ready (None to block indefinitely).
  • sigmask: Signal mask to activate while waiting for file descriptors to turn ready (None to set no alternative signal mask).

§References

pselect(2)

The new pselect() system call