Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

pthread_setcancelstate()

Set a thread's cancellation state

Synopsis:

#include <pthread.h>

int pthread_setcancelstate( int state,
                            int* oldstate );

Arguments:

state
The new cancellation state.
oldstate
A pointer to a location where the function can store the old cancellation state.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The pthread_setcancelstate() function sets the calling thread's cancellation state to state and returns the previous cancellation state in oldstate.

The cancellation state can have the following values:

PTHREAD_CANCEL_DISABLE
Cancellation requests are held pending.
PTHREAD_CANCEL_ENABLE
Cancellation requests may be acted on according to the cancellation type; see pthread_setcanceltype().

The default cancellation state for a thread is PTHREAD_CANCEL_ENABLE.


Note: You can set this attribute (in a non-POSIX way) before creating the thread; for more information, see "QNX extensions," in the documentation for pthread_create().

Returns:

EOK
Success.
EINVAL
The cancellation state specified by state is invalid.

Classification:

POSIX 1003.1 THR

Safety:
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

pthread_cancel(), pthread_setcanceltype(), pthread_testcancel()