Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pthread_testcancel(3) [x11r4 man page]

PTHREAD_TESTCANCEL(3)					     Linux Programmer's Manual					     PTHREAD_TESTCANCEL(3)

NAME
pthread_testcancel - request delivery of any pending cancellation request SYNOPSIS
#include <pthread.h> void pthread_testcancel(void); Compile and link with -pthread. DESCRIPTION
Calling pthread_testcancel() creates a cancellation point within the calling thread, so that a thread that is otherwise executing code that contains no cancellation points will respond to a cancellation request. If cancelability is disabled (using pthread_setcancelstate(3)), or no cancellation request is pending, then a call to pthread_testcancel() has no effect. RETURN VALUE
This function does not return a value. If the calling thread is canceled as a consequence of a call to this function, then the function does not return. ERRORS
This function always succeeds. ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7). +---------------------+---------------+---------+ |Interface | Attribute | Value | +---------------------+---------------+---------+ |pthread_testcancel() | Thread safety | MT-Safe | +---------------------+---------------+---------+ CONFORMING TO
POSIX.1-2001, POSIX.1-2008. EXAMPLE
See pthread_cleanup_push(3). SEE ALSO
pthread_cancel(3), pthread_cleanup_push(3), pthread_setcancelstate(3), pthreads(7) COLOPHON
This page is part of release 4.15 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/. Linux 2017-09-15 PTHREAD_TESTCANCEL(3)

Check Out this Related Man Page

pthread_testcancel(3C)					   Standard C Library Functions 				    pthread_testcancel(3C)

NAME
pthread_testcancel - create cancellation point in the calling thread SYNOPSIS
cc -mt [ flag... ] file... -lpthread [ library... ] #include <pthread.h> void pthread_testcancel(void); DESCRIPTION
The pthread_testcancel() function forces testing for cancellation. This is useful when you need to execute code that runs for long periods without encountering cancellation points; such as a library routine that executes long-running computations without cancellation points. This type of code can block cancellation for unacceptable long periods of time. One strategy for avoiding blocking cancellation for long periods, is to insert calls to pthread_testcancel() in the long-running computation code and to setup a cancellation handler in the library code, if required. RETURN VALUES
The pthread_testcancel() function returns void. ERRORS
The pthread_testcancel() function does not return errors. EXAMPLES
See cancellation(5) for an example of using pthread_testcancel() to force testing for cancellation and a discussion of cancellation con- cepts. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
Intro(3), pthread_cleanup_pop(3C), pthread_cleanup_push(3C), pthread_exit(3C), pthread_join(3C), pthread_setcancelstate(3C), pthread_set- canceltype(3C), setjmp(3C), attributes(5), cancellation(5), condition(5), standards(5) NOTES
The pthread_testcancel() function has no effect if cancellation is disabled. Use pthread_testcancel() with pthread_setcanceltype() called with its canceltype set to PTHREAD_CANCEL_DEFERRED. The pthread_testcancel() function operation is undefined if pthread_setcanceltype() was called with its canceltype argument set to PTHREAD_CANCEL_ASYNCHRONOUS. It is possible to kill a thread when it is holding a resource, such as lock or allocated memory. If that thread has not setup a cancella- tion cleanup handler to release the held resource, the application is "cancel-unsafe". See attributes(5) for a discussion of Cancel- Safety, Deferred-Cancel-Safety, and Asynchronous-Cancel-Safety. SunOS 5.11 23 Mar 2005 pthread_testcancel(3C)
Man Page