The cancelability type

Assuming the target thread has the cancelability state enabled is the first step; the thread's cancelability type determines what happens next. There are two types: deferred (the default) and asynchronous. When a thread's cancelability type is asynchronous, it can be canceled at any point in time (in fact, it should happen immediately, but is not always guaranteed to); if the cancelability type is deferred (the default), it can only be canceled (terminated) when it hits the next cancelation point.

A cancelation point is a list of (usually blocking) functions (more on this shortly). When the target thread—that, remember, is of the enabled cancelability state and the deferred type—encounters the next cancelation point ...

Get Hands-On System Programming with Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.