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

sigsuspend — atomically release blocked signals and wait for interrupt

Description

       The  sigsuspend()  system  call  temporarily  changes the blocked signal mask to the set to which sigmask
       points, and then waits for a signal to arrive; on return the previous set of masked signals is  restored.
       The signal mask set is usually empty to indicate that all signals are to be unblocked for the duration of
       the call.

       In normal usage, a signal is blocked using sigprocmask(2) to begin a critical section, variables modified
       on  the  occurrence  of  the  signal  are examined to determine that there is no work to be done, and the
       process pauses awaiting work by using sigsuspend() with the previous mask returned by sigprocmask(2).

Library

       Standard C Library (libc, -lc)

Name

       sigsuspend — atomically release blocked signals and wait for interrupt

Return Values

       The sigsuspend() system call always terminates by being interrupted,  returning  -1  with  errno  set  to
       EINTR.

See Also

pselect(2),  sigaction(2),  sigpending(2),  sigprocmask(2),  sigtimedwait(2), sigwait(2), sigwaitinfo(2),
       sigsetops(3)

Standards

       The sigsuspend() system call is expected to conform to ISO/IEC 9945-1:1990 (“POSIX.1”).

Debian                                           August 16, 2013                                   SIGSUSPEND(2)

Synopsis

#include<signal.h>intsigsuspend(constsigset_t*sigmask);

See Also