Opcje wyszukiwania podręcznika man:
Lista stron man zaczynających się od znaku:
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z   ALPHA   NUM   OTHER   ALL
SIGWAITINFO(2)             Linux Programmer's Manual            SIGWAITINFO(2)

       sigwaitinfo, sigtimedwait - synchronously wait for queued signals

       #include <signal.h>

       int sigwaitinfo(const sigset_t *set, siginfo_t *info);

       int sigtimedwait(const sigset_t *set, siginfo_t *info,
                        const struct timespec *timeout);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       sigwaitinfo(), sigtimedwait(): _POSIX_C_SOURCE >= 199309L

       sigwaitinfo()  suspends  execution  of the calling process until one of
       the signals in set is delivered.  (If one of  the  signals  in  set  is
       already  pending  for  the  calling  process, sigwaitinfo() will return
       immediately with information about that signal.)

       sigwaitinfo() removes the delivered signal from the  calling  process's
       list  of  pending signals and returns the signal number as its function
       result.  If the info argument is not NULL, then it returns a  structure
       of  type  siginfo_t (see sigaction(2)) containing information about the

       Signals returned via sigwaitinfo() are delivered in  the  usual  order;
       see signal(7) for further details.

       sigtimedwait() operates in exactly the same way as sigwaitinfo() except
       that it has an additional argument, timeout,  which  enables  an  upper
       bound  to  be  placed  on  the time for which the process is suspended.
       This argument is of the following type:

           struct timespec {
               long    tv_sec;         /* seconds */
               long    tv_nsec;        /* nanoseconds */

       If both fields of this structure are specified as 0,  a  poll  is  per-
       formed:  sigtimedwait()  returns  immediately,  either with information
       about a signal that was pending for the caller, or  with  an  error  if
       none of the signals in set was pending.

       On  success, both sigwaitinfo() and sigtimedwait() return a signal num-
       ber (i.e., a value greater than zero).  On failure  both  calls  return
       -1, with errno set to indicate the error.

       EAGAIN No  signal in set was delivered within the timeout period speci-
              fied to sigtimedwait().

       EINTR  The wait was interrupted by a  signal  handler;  see  signal(7).
              (This  handler was for a signal other than one of those in set.)

       EINVAL timeout was invalid.


       In normal usage, the calling program blocks the signals in  set  via  a
       prior call to sigprocmask(2) (so that the default disposition for these
       signals does not occur if they are delivered between  successive  calls
       to sigwaitinfo() or sigtimedwait()) and does not establish handlers for
       these signals.  In  a  multithreaded  program,  the  signal  should  be
       blocked  in  all  threads  to  prevent  the signal being delivered to a
       thread other than the one calling sigwaitinfo() or sigtimedwait()).

       If multiple threads of a process are blocked waiting for the same  sig-
       nal(s)  in  sigwaitinfo()  or  sigtimedwait(),  then exactly one of the
       threads will actually receive the signal when it is generated; which of
       the threads receives the signal is indeterminate.

       POSIX  leaves  the  meaning of a NULL value for the timeout argument of
       sigtimedwait() unspecified, permitting the possibility  that  this  has
       the same meaning as a call to sigwaitinfo(), and indeed this is what is
       done on Linux.

       On Linux, sigwaitinfo() is a library function  implemented  on  top  of

       kill(2),  sigaction(2), signal(2), signalfd(2), sigpending(2), sigproc-
       mask(2), sigqueue(2), sigsetops(3), sigwait(3), signal(7), time(7)

       This page is part of release 3.05 of the Linux  man-pages  project.   A
       description  of  the project, and information about reporting bugs, can
       be found at

Linux                             2008-06-02                    SIGWAITINFO(2)

Time taken: 0.00055 seconds

Created with the man page lookup class by Andrew Collington,