可结合线程和可分离线程的区别
     在任意一个时间点上,一个线程是可结合的,或者是可分离的。一个可结合的线程是可以被其他进程回收资源或者杀死的,在其他线程被回收之前,他的存储器资源(如栈)是不会被回收的。一个可分离的线程是不可以被其他线程回收资源或者杀死的,他的存储器资源在他终止的时候可以由系统自动释放。
创建线程后的默认状态
     在一个进程中创建线程,默认的状态是可结合的,这时候,线程必须等待原有的进程结束后才算是线程终止,这个时候才能被回收他的资源。我们一般不关心线程的终止状态,所以一般在创建线程结束以后,就可以把线程设置成分离状态,这时候的线程不被其他线程所等待,当线程运行结束终止以后,他会自动释放自己所占用的资源。     
为什么要将线程设置成分离状态
     为了在使用线程的时候,避免线程的资源得不到正确的释放,从而导致了内存泄漏的问题。所以要确保进程为可分离的的状态,否则要进行线程等待已回收他的资源。

为什么要将线程设置成分离状态相关推荐

  1. APUE 线程的分离状态

    在任何一个时间点上,线程是可结合的(joinable),或者是分离的(detached).一个可结合的线程能够被其他线程收回其资源和杀死:在被其他线程回收之前,它的存储器资源(如栈)是不释放的.相反, ...

  2. 线程状态:分离状态(detached)与可结合状态(joinable)

    1.在任何一个时间点上,线程是可结合的(joinable),或者是分离的(detached). 一个可结合的线程能够被其他线程收回其资源和杀死:在被其 他线程回收之前,它的存储器资源(如栈)是不释放的 ...

  3. 【C++ 语言】线程 ( 线程创建方法 | 线程标识符 | 线程属性 | 线程属性初始化 | 线程属性销毁 | 分离线程 | 线程调度策略 | 线程优先级 | 线程等待 )

    文章目录 I 线程创建方法 II 线程执行函数 III 线程标识符 IV 线程属性 V 线程属性 1 ( 分离线程 | 非分离线程 ) VI 线程属性 2 ( 线程调度策略 ) VII 线程属性 3 ...

  4. 线程的属性 —— 分离的状态(detached state)、栈地址(stack address)、栈大小(stack size)

    参考:(四十二)线程--线程属性 作者:FadeFarAway 发布时间:2017-01-17 14:09:55 网址:https://blog.csdn.net/FadeFarAway/articl ...

  5. 批量设置Service Order成transferred状态

    Created by Jerry Wang on Apr 05, 2014 以test mode执行report: 会打印出所有当前状态为Transferring的Service order ID: ...

  6. VScode设置语言为中文成功,菜单栏仍然显示成英文状态

    我在VScode设置语言为中文成功 菜单栏仍然显示成英文状态. 解决方案: 第一步:Ctrl + Shift + p 第二步:配置语言 第三步: 选择中文 第四步:重启 重启之后就好了,没问题了.以上 ...

  7. 守护线程------setDaemon(true)设置成守护线程

    代码: package cn.tedu.thread; public class DeamonDemo { public static void main(String[] args) { //创建线 ...

  8. setEnabled():设置成true时,相当于激活了按钮,按钮的状态不再是死的,

    2 package day01;//我声明了一个包叫做day01()public class HelloWorld {//声明类(房子)public static void main(String[] ...

  9. 计算机无法为u盘保存所有数据,U盘插电脑后设置成只能读不能写状态

    如果你是办公室或寝室的"资源"存储核心,电脑总保存了大量应用软件或其他资料,难免会接到身边人们各种各样的要求.就像小编一样,今天来人拷个电影.明天分享个游戏,不胜其烦啊! 在闭关多 ...

最新文章

  1. C语言中常用的数学公式
  2. 10.Spark之RDD及编程接口
  3. u-boot.lds详细的分析
  4. 日期setHours()方法以及JavaScript中的示例
  5. 面向对象编程其实很简单——Python 面向对象(初级篇)
  6. 一、python基本语法元素(温度转换)
  7. 构建新模式java_Nacos 1.3.0 来了,基于全新内核构建!
  8. Windows 2003域更名工具(Domain Rename Tool)
  9. python正则表达式练习题
  10. 认知无线电网络中的频谱切换理论
  11. 离线语音风扇设计应用案例
  12. java类与对象实验报告心得体会_java实习实训报告心得【三篇】
  13. 华为RH2288V3服务器不重构RAID扩容磁盘方法
  14. raid卡直通模式会走缓存吗_磁盘阵列 RAID 技术如何保护数据
  15. obj-c中Autorelease、属相定义Property、对象的操作
  16. 分类算法常用的评价指标
  17. 目前游戏行业内部主要几款游戏引擎的技术对比(转)
  18. Linux内核源码 ---- el2_setup源码解析
  19. 乐鑫esp8266学习rtos3.0笔记第6篇:esp8266-12模块基于rtos3.1版本ota功能远程空中升级固件,官网之上增加dns域名解析!(附带demo)
  20. 5.3 用区块链改变征信体系

热门文章

  1. Linux下Python实现有道词典
  2. 斐讯路由器劫持贴吧无法打开分析
  3. Android高级编程(奋斗之小鸟)_PDF 电子书
  4. FISCO BCOS相关问题讨论
  5. sql concat()函数
  6. yarn降版本_Yarn配置
  7. linux raid1无法恢复,RAID1单硬盘损坏更换硬盘后恢复的方法
  8. html ios风格日历,极致演绎iOS7风格 简约日历应用Cal体验
  9. COM模块详细讲解(Autosar Cp面向信号)
  10. MySQL IP 白名单使用通配符