pthread_cancel
需要出入tid
返回值:失败返回errno,成功返回0
被pthread_cancel杀死的进程状态,退出状态为PTHREAD_CANCELED
强行设置取消点pthread_testcancel()
pthread_cancel.c
#include <stdio.h>
#include <unistd.h>
#include <pthread.h>
void* thr(void *arg)
{
while(1){
printf("I am a thread! pid=%d,tid=%lu\n",getpid(),pthread_self());
sleep(1);
}
return NULL;
}
int main()
{
pthread_t tid;
pthread_create(&tid,NULL,thr,NULL);
sleep(5);
pthread_cancel(tid);
void *ret;
pthread_join(tid,NULL);
printf("thread exit with %d\n",(int)ret);
pthread_exit(NULL);
return 0;
}
456

被折叠的 条评论
为什么被折叠?



