|
PTHREAD_CANCEL(3)
Contents
|
pthread_cancel - cancel execution of a thread
#include <pthread.h>
int
pthread_cancel(pthread_t thread);
The pthread_cancel() function requests that thread be cancelled. The
target thread's cancelability state and type determines when
the cancellation
takes effect. When the cancellation is acted on, the
cancellation
cleanup handlers for thread are called. When the last cancellation
cleanup handler returns, the thread-specific data destructor
functions
will be called for thread. When the last destructor function returns,
thread will be terminated.
The cancellation processing in the target thread runs asynchronously with
respect to the calling thread returning from
pthread_cancel().
A status of PTHREAD_CANCELED is made available to any
threads joining
with the target. The symbolic constant PTHREAD_CANCELED expands to a
constant expression of type (void *) whose value matches no
pointer to an
object in memory nor the value NULL.
If successful, the pthread_cancel() functions will return
zero. Otherwise
an error number will be returned to indicate the error.
pthread_cancel() will fail if:
[ESRCH] No thread could be found corresponding to that
specified by
the given thread ID.
pthread_cleanup_pop(3), pthread_cleanup_push(3), pthread_exit(3),
pthread_join(3), pthread_setcancelstate(3), pthread_setcanceltype(3),
pthread_testcancel(3)
pthread_cancel() conforms to ISO/IEC 9945-1:1996
(``POSIX'').
OpenBSD 3.6 January 17, 1999
[ Back ] |