|
pthread_setcancelstate(3)
Contents
|
pthread_setcancelstate - Sets the calling thread's cancelability
state
#include <pthread.h>
int pthread_setcancelstate(
int state,
int *oldstate );
DECthreads POSIX 1003.1c Library (libpthread.so)
Interfaces documented on this reference page conform to
industry standards as follows:
IEEE Std 1003.1c-1995, POSIX System Application Program
Interface
State of general cancelability to set for the calling
thread. The following are valid cancel state values:
PTHREAD_CANCEL_ENABLE PTHREAD_CANCEL_DISABLE Previous cancelability
state for the calling thread.
This routine sets the current thread's cancelability state
and returns the calling thread's previous cancelability
state in oldstate.
When cancelability state is set to PTHREAD_CANCEL_DISABLE,
a cancellation request cannot be delivered to the thread,
even if a cancelable routine is called or asynchronous
cancelability type is enabled.
When a thread is created, the default cancelability state
is PTHREAD_CANCEL_ENABLE.
Possible Problems When Disabling Cancelability [Toc] [Back]
The most important use of thread cancellation is to ensure
that indefinite wait operations are terminated. For example,
a thread that waits on some network connection, which
can possibly take days to respond (or might never
respond), should be made cancelable.
When a thread's cancelability is disabled, no routine in
that thread is cancelable. As a result, the user is unable
to cancel the operation performed by that thread. When
disabling cancelability, be sure that no long waits can
occur or that it is necessary for other reasons to defer
cancellation requests around that particular region of
code.
On successful completion, this routine returns the calling
thread's previous cancelability state in the location
specified by the oldstate argument.
If an error condition occurs, this routine returns an
integer value indicating the type of error. Possible
return values are as follows: Successful completion. The
specified state is not PTHREAD_CANCEL_ENABLE or
PTHREAD_CANCEL_DISABLE.
None
Functions: pthread_cancel(3), pthread_setcanceltype(3),
pthread_testcancel(3)
Manuals: Guide to DECthreads and Programmer's Guide
pthread_setcancelstate(3)
[ Back ] |