*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> pthread_cleanup_push (3)              
Title
Content
Arch
Section
 

pthread_cleanup_push(3)

Contents


NAME    [Toc]    [Back]

       pthread_cleanup_push  - (Macro) Establishes a cleanup handler
 routine to be executed when the thread  exits  or  is
       canceled

SYNOPSIS    [Toc]    [Back]

       #include <pthread.h>

       int pthread_cleanup_push(
               void (*routine) (void *),
               void *arg );

LIBRARY    [Toc]    [Back]

       DECthreads POSIX 1003.1c Library (libpthread.so)

STANDARDS    [Toc]    [Back]

       Interfaces  documented  on  this reference page conform to
       industry standards as follows:

       IEEE Std 1003.1c-1995, POSIX  System  Application  Program
       Interface

PARAMETERS    [Toc]    [Back]

       Routine  executed as the cleanup handler.  Argument passed
       to the cleanup routine.

DESCRIPTION    [Toc]    [Back]

       This routine pushes the specified routine onto the calling
       thread's  cleanup  handler stack. The cleanup handler routine
 is popped from the stack and executed  with  the  arg
       argument  when  any  of  the  following actions occur: The
       thread  calls  pthread_cleanup_pop(3)  and   specifies   a
       nonzero  value for the execute argument.  The thread calls
       pthread_exit(3).  The thread is canceled.  An exception is
       raised  and  is caught when DECthreads unwinds the calling
       thread's   stack   to   the   lexical   scope    of    the
       pthread_cleanup_push(3) and pthread_cleanup_pop(3) pair.

       This routine and pthread_cleanup_pop(3) are implemented as
       macros and must appear as statements and in  pairs  within
       the   same   lexical   scope.   You   can   think  of  the
       pthread_cleanup_push(3) macro as  expanding  to  a  string
       whose   first   character   is   a   left  brace  ({)  and
       pthread_cleanup_pop(3) as expanding to a string containing
       the corresponding right brace (}).

RETURN VALUES    [Toc]    [Back]

       None

SEE ALSO    [Toc]    [Back]

      
      
       Functions:    pthread_cancel(3),   pthread_cleanup_pop(3),
       pthread_create(3), pthread_exit(3), thread_testcancel(3)

       Manuals: Guide to DECthreads and Programmer's Guide



                                          pthread_cleanup_push(3)
[ Back ]
 Similar pages
Name OS Title
pthread_cleanup_pop Tru64 (Macro) Removes the cleanup handler routine from the calling thread's cleanup handler stack and opti...
tis_once Tru64 Calls an initialization routine that can be executed by only one thread, once
pthread_once Tru64 Calls a routine to be executed by a single thread, once.
sigreturn Linux return from signal handler and cleanup stack frame
pthread_cleanup_pop OpenBSD call the first cleanup routine
pthread_cleanup_pop FreeBSD call the first cleanup routine
pthread_cleanup_push FreeBSD add a cleanup function for thread exit
pthread_cleanup_push OpenBSD add a cleanup function for thread exit
pthread_cleanup_push IRIX manage thread cleanup handlers
gexit IRIX exits graphics
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service