主线程阻塞自己 , 等待子线程结束,然后回收子线程资源
可以设置线程能否被取消和取消后是否立即执行
参数表
state:PTHREAD_CANCEL_DISABLE或者PTHREAD_CANCEL_ENABLE
oldstate:指针类型,上一次取消状态的指针,可设NULL
type:PTHREAD_CANCEL_ASYNCHRONOUS立即取消
PTHREAD_CANCEL_DEFERRED等待事件(如pthread_join时)才取消
在任何一个时间点上,线程是可结合的(joinable),或者是分离的(detached) 。一个可结合的线程能够被其他线程收回其资源和杀死,只有当pthread_join()函数返回时,创建的线程才算终止,才能释放自己占用的系统资源;在被其他线程回收之前,它的存储器资源(如栈)是不释放的 。相反,一个分离的线程是不能被其他线程回收或杀死的,它的存储器资源在它终止时由系统自动释放 。因此为了避免内存泄漏,所有线程的终止,要么已设为DETACHED,要么就需要使用pthread_join()来回收
返回0成功 , 错误号失败
分离后不可以再合并 。该操作不可逆
综合以上要想让子线程总能完整执行(不会中途退出) ,
注:很多地方参照了黄茹老师主编的《Linux环境高级程序设计》
linux终止线程命令的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux终止进程用什么命令、linux终止线程命令的信息别忘了在本站进行查找喔 。
推荐阅读
- 如何给电脑设置ip代理,电脑怎么设置代理地址
- linux虚拟机命令符,linux虚拟机常用命令全集
- erp系统目的和要求,erp系统的主要价值
- 幼儿体育游戏怎么打开,幼儿园体育游戏怎么开展
- go语言zip go语言字符串
- redis2g能存5g数据吗,redis 内存多大
- 恋爱养成记真人版游戏,恋爱养成记什么意思
- wegame游戏推荐经营,wegame的游戏
- python累计分布函数 python数据分布统计