MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Standard C Library Functions             pthreadcleanuppush(3C)



NAME
     pthreadcleanuppush - push a  thread  cancellation  cleanup
     handler

SYNOPSIS
     cc -mt [ flag... ] file... -lpthread [ library... ]
     #include 

     void pthreadcleanuppush(void (*handler) (void *), void *arg);


DESCRIPTION
     The pthreadcleanuppush()  function  pushes  the  specified
     cancellation cleanup handler routine, handler, onto the can-
     cellation cleanup stack of the calling thread.


     When a thread exits or  is  canceled  and  its  cancellation
     cleanup   stack  is  not  empty,  the  cleanup  handlers are
     invoked with the argument  arg in  last in, first out (LIFO)
     order from the cancellation cleanup stack.


     An  exiting  or  cancelled  thread  runs  with  all  signals
     blocked. All thread termination functions, including cancel-
     lation  cleanup  handlers,  are  called  with  all   signals
     blocked.


     The pthreadcleanuppush() and pthreadcleanuppop(3C) func-
     tions  can  be  implemented  as macros. The application must
     ensure that they appear as statements, and in  pairs  within
     the  same lexical scope (that is, the pthreadcleanuppush()
     macro can be thought to expand to a token list  whose  first
     token is '{' with pthreadcleanuppop() expanding to a token
     list whose last token is the corresponding '}').


     The effect of the use of return, break, continue,  and  goto
     to  prematurely  leave  a  code block described by a pair of
     pthreadcleanuppush()  and  pthreadcleanuppop()  function
     calls is undefined.


     Using longjmp() or siglongjmp() to jump into  or  out  of  a
     push/pop  pair  can  cause  either  the matching push or the
     matching pop statement not getting executed.

RETURN VALUES
     The pthreadcleanuppush() function returns no value.





SunOS 5.11           Last change: 2 Nov 2007                    1






Standard C Library Functions             pthreadcleanuppush(3C)



ERORS
     No errors are defined.


     The  pthreadcleanuppush()  function  will  not  return  an
     error code of EINTR.

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



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


SEE ALSO
     longjmp(3C),  pthreadcancel(3C),   pthreadcleanuppop(3C),
     pthreadexit(3C),                          pthreadjoin(3C),
     pthreadsetcancelstate(3C),       pthreadsetcanceltype(3C),
     pthreadtestcancel(3C), attributes(5), cancellation(5), con-
     dition(5), standards(5)

NOTES
     See cancellation(5) for a discussion  of  cancellation  con-
     cepts.





















SunOS 5.11           Last change: 2 Nov 2007                    2



OpenSolaris man pages main menu

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