pthread_setcancelstate()

Updated: April 19, 2023

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. This parameter can be NULL if you don't want to store the old value.

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 Neutrino extensions,” in the documentation for pthread_create().

Returns:

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

Classification:

POSIX 1003.1

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