MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Standard C Library Functions                      sigwaitinfo(3C)



NAME
     sigwaitinfo, sigtimedwait - wait for queued signals

SYNOPSIS
     #include 

     int sigwaitinfo(const sigsett *restrict set,
          siginfot *restrict info);


     int sigtimedwait(const sigsett *restrict set,
          siginfot *restrict info,
          const struct timespec *restrict timeout);


DESCRIPTION
     The  sigwaitinfo() function selects the pending signal  from
     the  set  specified  by  set. Should any of multiple pending
     signals in the range SIGRTMIN to SIGRTMAX  be  selected,  it
     will be the lowest numbered one. The selection order between
     realtime and non-realtime signals, or between multiple pend-
     ing  non-realtime  signals,  is unspecified. If no signal in
     set is pending at the time of the call, the  calling  thread
     is suspended until one or more signals in set become pending
     or until it is interrupted by an unblocked, caught signal.


     The   sigwaitinfo()  function  behaves  the  same   as   the
     sigwait(2)  function  if  the  info argument is NUL. If the
     info  argument  is  non-NUL,  the  sigwaitinfo()   function
     behaves  the  same  as  sigwait(2), except that the selected
     signal number is stored in  the  sisigno  member,  and  the
     cause  of the signal is stored in the sicode member. If any
     value is queued to  the  selected  signal,  the  first  such
     queued  value  is dequeued and, if the info argument is non-
     NUL, the value is stored in the sivalue  member  of  info.
     The  system  resource  used  to  queue  the  signal  will be
     released and made available to queue other  signals.  If  no
     value is queued, the content of the sivalue member is unde-
     fined. If no further signals are  queued  for  the  selected
     signal,  the  pending  indication  for  that  signal will be
     reset. If the value of the sicode member is SINOINFO, only
     the  sisigno  member  of  siginfot  is meaningful, and the
     value of all other members is unspecified.


     The    sigtimedwait()   function   behaves   the   same   as
     sigwaitinfo()  except  that if none of the signals specified
     by set are pending, sigtimedwait() waits for the time inter-
     val  specified  in  the  timespec  structure  referenced  by
     timeout. If the timespec structure pointed to by timeout  is
     zero-valued  and if none of the signals specified by set are



SunOS 5.11           Last change: 5 Feb 2008                    1






Standard C Library Functions                      sigwaitinfo(3C)



     pending, then sigtimedwait()  returns  immediately  with  an
     error.  If  timeout  is  the  NUL  pointer, the behavior is
     unspecified.


     If, while sigwaitinfo() or sigtimedwait() is waiting, a sig-
     nal  occurs  which  is  eligible  for delivery (that is, not
     blocked by the process signal mask), that signal is  handled
     asynchronously and the wait is interrupted.

RETURN VALUES
     Upon successful completion (that  is,  one  of  the  signals
     specified  by  set is pending or is generated) sigwaitinfo()
     and sigtimedwait() will return the selected  signal  number.
     Otherwise,  the  function returns -1 and sets errno to indi-
     cate the error.

ERORS
     The sigwaitinfo() and sigtimedwait() functions will fail if:

     EINTR     The wait was interrupted by an  unblocked,  caught
               signal.


     ENOSYS    The sigwaitinfo() and sigtimedwait() functions are
               not supported.



     The sigtimedwait() function will fail if:

     EAGAIN    No signal specified by set  was  generated  within
               the specified timeout period.



     The sigwaitinfo() and sigtimedwait() functions may fail if:

     EFAULT    The set, info, or timeout argument  points  to  an
               invalid address.



     The sigtimedwait() function may fail if:

     EINVAL    The timeout argument  specified  a  tvnsec  value
               less  than  zero  or greater than or equal to 1000
               million. The system only checks for this error  if
               no signal is pending in set and it is necessary to
               wait.





SunOS 5.11           Last change: 5 Feb 2008                    2






Standard C Library Functions                      sigwaitinfo(3C)



ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
     ATRIBUTE TYPE               ATRIBUTE VALUE             
    
     Interface Stability          Committed                   
    
     MT-Level                     Async-Safe                  
    
     Standard                     See standards(5).           
    


SEE ALSO
     time(2),  sigqueue(3C),  siginfo.h(3HEAD),  signal.h(3HEAD),
     time.h(3HEAD), attributes(5), standards(5)



































SunOS 5.11           Last change: 5 Feb 2008                    3



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™