Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pthread_setcancelstate(3) — Digital UNIX 4.0d

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

pthread_cancel(3)

pthread_setcanceltype(3)

pthread_testcancel(3)

pthread_setcancelstate(3)  —  Subroutines

NAME

pthread_setcancelstate − Sets the calling thread’s cancelability state. 

LIBRARY

DECthreads POSIX 1003.1c Library (libpthread.so)

SYNOPSIS

#include <pthread.h>

int  pthread_setcancelstate(
                      int      state,
                      int      ∗oldstate);

STANDARDS

Interfaces documented on this reference page conform to industry standards as follows:

IEEE Std 1003.1c-1995, POSIX System Application Program Interface

PARAMETERS

stateState of general cancelability to set for the calling thread.  The following are valid cancel state values:

       •PTHREAD_CANCEL_ENABLE

       •PTHREAD_CANCEL_DISABLE

oldstatePrevious cancelability state for the calling thread. 

DESCRIPTION

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 cancelation 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

The most important use of thread cancelation 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 cancelation requests around that particular region of code. 

RETURN VALUES

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:

0Successful completion. 

[EINVAL]The specified state is not PTHREAD_CANCEL_ENABLE or PTHREAD_CANCEL_DISABLE. 

ERRORS

None

RELATED INFORMATION

Functions: pthread_cancel(3), pthread_setcanceltype(3), pthread_testcancel(3)

Manuals: Guide to DECthreads and Programmer’s Guide
 
 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026