clang-tidy - concurrency-thread-canceltype-asynchronous — Extra Clang Tools 17.0.6 documentation

# Extra Clang Tools 17.0.6 documentation

## clang-tidy - concurrency-thread-canceltype-asynchronous

# concurrency-thread-canceltype-asynchronous

Finds `pthread_setcanceltype` function calls where a thread’s cancellation type is set to asynchronous. Asynchronous cancellation type (`PTHREAD_CANCEL_ASYNCHRONOUS`) is generally unsafe, use type `PTHREAD_CANCEL_DEFERRED` instead which is the default. Even with deferred cancellation, a cancellation point in an asynchronous signal handler may still be acted upon and the effect is as if it was an asynchronous cancellation.

This check corresponds to the CERT C Coding Standard rule POS47-C. Do not use threads that can be canceled asynchronously.