sigsuspend(2) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

sigsuspend(2)

sigsuspend(2)                    System Calls                    sigsuspend(2)

NAME
       sigsuspend - install a signal mask and suspend caller until signal

SYNOPSIS
       #include <signal.h>

       int sigsuspend(const sigset_t *set);

DESCRIPTION
       The  sigsuspend()  function  replaces the caller's signal mask with the
       set of signals pointed to by the set argument and suspends  the  caller
       until  delivery  of a signal whose action is either to execute a signal
       catching function or to terminate the  process.  If  the  set  argument
       points  to  an invalid address, the behavior is undefined and errno may
       be set to EFAULT.


       If the action is to terminate the process, sigsuspend()  does  not  re‐
       turn.  If  the action is to execute a signal catching function, sigsus‐
       pend() returns after the signal catching function returns.  On  return,
       the  signal mask is restored to the set that existed before the call to
       sigsuspend().


       It is not possible to block signals that cannot be  ignored  (see  sig‐
       nal.h(3HEAD)). This restriction is silently imposed by the system.

RETURN VALUES
       Since  sigsuspend() suspends the caller's execution indefinitely, there
       is no successful completion return value. On failure, it returns −1 and
       sets errno to indicate the error.

ERRORS
       The sigsuspend() function will fail if:

       EINTR    A signal was caught by the caller  and  control  was  returned
                from the signal catching function.



       The sigsuspend() function may fail if:

       EFAULT    The set argument points to an illegal address.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ Interface  StabilityCommitted  _  MT-LevelAsync-Signal-
       Safe _ StandardSee standards(7).


SEE ALSO
       sigaction(2),  sigprocmask(2),  sigwait(2),  signal(3C), sigsetops(3C),
       signal.h(3HEAD), attributes(7)

NOTES
       If the caller specifies more than one unblocked signal in the  mask  to
       sigsuspend(),  more  than one signal might be processed before the call
       to sigsuspend() returns.


       While the caller is executing the signal handler that  interrupted  its
       call  to  sigsuspend(),  its  signal  mask is the one passed to sigsus‐
       pend(), modified as usual by the signal mask specification in the  sig‐
       nal's sigaction(2) parameters. The caller's signal mask is not restored
       to its previous value until the caller returns from all the signal han‐
       dlers that interrupted sigsuspend().

Oracle Solaris 11.4               24 Jun 2001                    sigsuspend(2)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3