取消机制——杀死线程
pthread_setcancelstate 设置线程的取消状态
pthread_setcanceltype 设置线程相应取消命令方式
pthread_cleanup_push 注册线程退出处理函数
pthread_cleanup_pop 清除注册的退出处理函数
线程的取消机制概念
所谓先线程的取消机制就是杀死一个线程,跟我们进程当中的异步信号有点相似,在我们的程序中,我们可以给某个指定的线程发送取消指令,当这个线程收到这条取消指令之后,便会退出这条线程,我们把这种机制,称为线程的取消机制。
取消机制相关API
pthread_cancel 取消线程
#include <pthread.h>
int pthread_cancel(pthread_t thread);
函数功能:
线程也可以选择不被取消指令所取消,这需要使用到取消状态函数
pthread_setcancelstate 设置线程的取消状态
#include <pthread.h>
int pthread_setcancelstate(int state, int *oldstate);