这段代码的执行结果是:

i = 0 i = 1 i = 2 ........

线程被取消,fun1函数被调用释放资源,解锁

,,,,,,

由于线程被取消,所以没有执行pthread_join函数,主线程直接退出。

线程取消函数void fun1void arg 释放资源的代码 解锁 printfn;线程执行函数void routinevoid arg 线程取消函数触发 pthread_cleanup_pushfun1 NULL; for int i = 0; i 10; ++i sleep1; printfi = dn i; 任

原文地址: http://www.cveoy.top/t/topic/iXzq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录