首页 > 代码库 > 线程退出前操作
线程退出前操作
#include <unistd.h>#include <pthread.h>#include <stdio.h>#include <stdlib.h>void cleanup(){ printf("cleanup\n");}void *test_cancel(void){ pthread_cleanup_push(cleanup,NULL); printf("test_cancel\n"); while(1) { printf("test message\n"); sleep(1); } pthread_cleanup_pop(0);}int main(){ pthread_t tid; pthread_create(&tid,NULL,(void *(*)(void *))test_cancel,NULL); sleep(2); pthread_cancel(tid); pthread_join(tid,NULL); return 0;}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。