请使用 pthread_cancel(3C) 取消线程。
int pthread_cancel(pthread_t thread);
#include <pthread.h> pthread_t thread; int ret; ret = pthread_cancel(thread);
取消请求的处理方式取决于目标线程的状态。状态由以下两个函数确定:pthread_setcancelstate(3C) 和 pthread_setcanceltype(3C)。
pthread_cancel() 在成功完成之后返回零。其他任何返回值都表示出现了错误。如果出现以下情况,该函数将失败并返回对应的值。
ESRCH
描述:没有找到与给定线程 ID 相对应的线程。