| Skip Navigation Links | |
| Exit Print View | |
![]() | man pages section 3: Basic Library Functions Oracle Solaris 11 Information Library |
enable_extended_FILE_stdio(3C)
posix_spawnattr_getschedparam(3C)
posix_spawnattr_getschedpolicy(3C)
posix_spawnattr_getsigdefault(3C)
posix_spawnattr_getsigignore_np(3C)
posix_spawnattr_getsigmask(3C)
posix_spawnattr_setschedparam(3C)
posix_spawnattr_setschedpolicy(3C)
posix_spawnattr_setsigdefault(3C)
posix_spawnattr_setsigignore_np(3C)
posix_spawnattr_setsigmask(3C)
posix_spawn_file_actions_addclose(3C)
posix_spawn_file_actions_addclosefrom_np(3C)
posix_spawn_file_actions_adddup2(3C)
posix_spawn_file_actions_addopen(3C)
posix_spawn_file_actions_destroy(3C)
posix_spawn_file_actions_init(3C)
pthread_attr_getdetachstate(3C)
pthread_attr_getinheritsched(3C)
pthread_attr_getschedparam(3C)
pthread_attr_getschedpolicy(3C)
pthread_attr_setdetachstate(3C)
pthread_attr_setinheritsched(3C)
pthread_attr_setschedparam(3C)
pthread_attr_setschedpolicy(3C)
pthread_barrierattr_destroy(3C)
pthread_barrierattr_getpshared(3C)
pthread_barrierattr_setpshared(3C)
pthread_condattr_getpshared(3C)
pthread_condattr_setpshared(3C)
pthread_cond_reltimedwait_np(3C)
pthread_key_create_once_np(3C)
pthread_mutexattr_getprioceiling(3C)
pthread_mutexattr_getprotocol(3C)
pthread_mutexattr_getpshared(3C)
pthread_mutexattr_getrobust(3C)
pthread_mutexattr_setprioceiling(3C)
pthread_mutexattr_setprotocol(3C)
pthread_mutexattr_setpshared(3C)
pthread_mutexattr_setrobust(3C)
pthread_mutex_getprioceiling(3C)
pthread_mutex_reltimedlock_np(3C)
pthread_mutex_setprioceiling(3C)
pthread_rwlockattr_destroy(3C)
pthread_rwlockattr_getpshared(3C)
pthread_rwlockattr_setpshared(3C)
pthread_rwlock_reltimedrdlock_np(3C)
pthread_rwlock_reltimedwrlock_np(3C)
pthread_rwlock_timedrdlock(3C)
pthread_rwlock_timedwrlock(3C)
rctlblk_get_enforced_value(3C)
- push a thread cancellation cleanup handler
cc –mt [flag... ]file... –lpthread [library... ]#include <pthread.h>voidpthread_cleanup_push(void (*handler) (void *),void *arg);
Thepthread_cleanup_push() function pushes the specified cancellation cleanup handler routine,handler, ontothe cancellation 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 argumentarg in last in, first out (LIFO) order from thecancellation cleanup stack.
An exiting or cancelled thread runs with all signals blocked. All threadtermination functions, including cancellation cleanup handlers, are called with all signals blocked.
Thepthread_cleanup_push() andpthread_cleanup_pop(3C) functions can be implemented as macros. The applicationmust ensure that they appear as statements, and in pairs within the samelexical scope (that is, thepthread_cleanup_push() macro can be thought to expandto a token list whose first token is '{' withpthread_cleanup_pop() expandingto a token list whose last token is the corresponding '}').
The effect of the use ofreturn,break,continue, andgoto toprematurely leave a code block described by a pair ofpthread_cleanup_push() andpthread_cleanup_pop() function calls is undefined.
Usinglongjmp() orsiglongjmp() to jump into or out of a push/poppair can cause either the matching push or the matching pop statementnot getting executed.
Thepthread_cleanup_push() function returns no value.
No errors are defined.
Thepthread_cleanup_push() function will not return an error code ofEINTR.
Seeattributes(5) for descriptions of the following attributes:
|
longjmp(3C),pthread_cancel(3C),pthread_cleanup_pop(3C),pthread_exit(3C),pthread_join(3C),pthread_setcancelstate(3C),pthread_setcanceltype(3C),pthread_testcancel(3C),attributes(5),cancellation(5),condition(5),standards(5)
Seecancellation(5) for a discussion of cancellation concepts.
Copyright © 2011, Oracle and/or its affiliates. All rights reserved.Legal Notices | ![]() ![]() |