当前位置: 首页 > news >正文

想要网站推广页面/seo教程论坛

想要网站推广页面,seo教程论坛,客户网站 备案,什么网站做谷歌联盟好Linux下两种类型线程的创建 Linux下多线程编程时,线程有两种属性,一种是joinable,一种是detached。 joinable属性的线程 如果是joinable的线程,那么必须使用pthread_join()来等待线程结束,否则线程所占用的资源不会得…

Linux下两种类型线程的创建
Linux下多线程编程时,线程有两种属性,一种是joinable,一种是detached。

joinable属性的线程
如果是joinable的线程,那么必须使用pthread_join()来等待线程结束,否则线程所占用的资源不会得到释放,会造成资源泄露。
其他线程或父线程如果没有调用pthread_join去做相关资源的释放(pthread id等),该线程运行结束后资源就得不到释放,所在进程的pthread id数目就可能会累积到达最大数目PTHREAD_THREADS_MAX,此时该进程就不能再创建线程了,因为pthread id等资源被用光了,这是在多线程编程中很常见的bug之一。
一个joinable线程,只能有一个pthread_join()来等待结束,如果有多个,则只有第一个执行到的有效,其他的都会直接返回,具体错误信息由pthread_join()函数的返回值返回。
pthread_create()函数默认创建的线程是joinable属性的,或者也可以使用下述代码显示的将线程设为joinable属性:

pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_JOINABLE);
pthread_create(&tid, &attr, callback, (void *)context);

detached属性的线程(不能被其他线程回收杀死,存储器资源终止时系统自动释放)
如果想创建一个线程,但又不想使用pthread_join()等待该线程结束,那么可以创建一个detached的线程。detached属性的线程,在结束的时候,会自动释放该线程所占用的资源。
detached不需要,也不能使用pthread_join()来等待线程结束。
可以用如下代码在来设置并创建detached线程:

pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_create(&tid, &attr, callback, (void *)context);

http://www.lbrq.cn/news/824239.html

相关文章:

  • 轻量应用服务器做网站/seo排名软件价格
  • 网站设计就业前景如何/公司做网络推广怎么做
  • wordpress清空演示数据/seo公司软件
  • 泉州高端网站建设/备案域名
  • 供应链金融网站开发/百度查一下
  • 政府网站什么时候建设的/浏览广告赚佣金的app
  • 河南建筑信息一体化平台/哈尔滨seo优化软件
  • html5炫酷的网站/优化推广方案
  • 做微商网站需要哪些/seo站长网
  • 龙岗网站设计资讯/seo是啥
  • 网站开发技术岗位职责/app营销推广方案
  • 展厅设计公司网站/seo兼职接单平台
  • 给你一个网站怎么做的吗/网络营销策划书格式
  • 私密浏览器免费看片在线看/信息流优化师没经验可以做吗
  • 健网站怎么做/网络营销建议
  • 网站快速开发平台/百度指数1000搜索量有多少
  • 网站做系统叫什么软件/seo自动发布外链工具
  • 官网网站备案流程/网页制作免费模板
  • 山东华泰建设集团有限公司官方网站/线下推广方式有哪些
  • 海南综合网站/搜外友链平台
  • 如何建设一个公司网站/佛山网站建设技术托管
  • 西宁知名网站制作公司/台湾新闻最新消息今天
  • 新乡网站建设设计/百度网游排行榜
  • 高校网站建设管理办法/简述网站内容如何优化
  • 浙江建站管理系统价格/杭州优化seo公司
  • 大气企业网站欣赏/专业恶意点击软件
  • 网站开发过程有几个阶段/职业培训机构资质
  • 一般网站服务费怎么入账做分录/百度如何精准搜索
  • magento 做的最牛逼的中文网站/站长工具seo综合
  • 校园网站建设网/seo基础知识考试
  • Linux的相关指令
  • 5道挑战题writup
  • Web3.0 能为你带来哪些实质性的 改变与突破
  • LVS 集群技术基础
  • Lua:小巧而强大的脚本语言,游戏与嵌入式的秘密武器
  • 智能体性能优化:延迟、吞吐量与成本控制