PTHREAD_CLEANUP_POP(3P) SysV PTHREAD_CLEANUP_POP(3P)
NAME
pthread_cleanup_pop - Removes a routine from the top of the cleanup stack
of the calling thread and optionally executes it
SYNOPSIS
#include <pthread.h>
void pthread_cleanup_pop (execute)
int execute;
DESCRIPTION
The pthread_cleanup_pop function removes the routine at the top of a
thread's cleanup stack. If the execute argument is nonzero,
pthread_cleanup_pop also executes the routine. If execute is 0 (zero),
the routine is not executed.
The execute argument specifies whether or not to execute the cleanup
routine.
Every call to the pthread_cleanup_push(3P) function must be matched by
exactly one call to the pthread_cleanup_pop function at the same lexical
level as the push.
The effect of calling longjmp(3C) or executing a return or goto after a
call to the pthread_cleanup_push(3P) function but before the matching
call to the pthread_cleanup_pop function is unspecified. The effect of
calling longjmp(3C) from a cleanup routine is also unspecified.
NOTES
This interface is based on draft 4 of the IEEE P1003.4a standard, and
will be changed to conform to the final version.
DIAGNOSTICS
No value is returned.
SEE ALSO
pthread_cleanup_push(3P), pthread_cancel(3P), pthread_setcancel(3P)