Open System Services System Calls Reference Manual (G06.29+, H06.08+, J06.03+)

System Functions (n - p) pthread_setcancelstate(2)
To use this function in a 64-bit threaded application that uses the POSIX User Thread Model
library on systems running H06.24 or later RVUs or J06.13 or later RVUs, you must perform all
of the following tasks:
Include the pthread.h header file in the application.
Compile the application using the _PUT_MODEL_ feature test macro or equivalent
compiler command option.
Compile the application using the -Wlp64 compiler command option.
Link the application to the yputdll library (/G/system/zdllnnn/yputdll).
To use this function in a threaded application that uses the Standard POSIX Threads library on
systems running H06.21 or later RVUs or J06.10 or later RVUs, you must perform all of the fol-
lowing tasks:
Include the spthread.h header file in the application.
Compile the application using the _SPT_MODEL_ feature test macro or equivalent
compiler command option.
Link the application to the zsptdll library (/G/system/zdllnnn/zsptdll).
Possible Problems When Disabling Cancelability
The most important use of thread cancelation is to ensure that possibly indefinite wait operations
are terminated. For example, a thread that waits on some network connection, which can possi-
bly 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 and that no cancelation requests must be deferred around that
particular region of code for other reasons.
RETURN VALUES
On successful completion, this function returns the calling thread’s previous cancelability state in
the oldstate parameter.
If an error condition occurs, this function returns an integer value indicating the type of error.
Possible return values are:
0 Successful completion.
[EINVAL] The specified cancelability state is not PTHREAD_CANCEL_ENABLE or
PTHREAD_CANCEL_DISABLE.
RELATED INFORMATION
Functions: pthread_cancel(2), pthread_setcanceltype(2), pthread_testcancel(2).
STANDARDS CONFORMANCE
Interfaces documented on this reference page conform to the following industry standards:
IEEE Std 1003.1-2004, POSIX System Application Program Interface
The use of the header file spthread.h is an HP exception to the POSIX standard.
527186-023 Hewlett-Packard Company 5167