SO中文参考
首页
(current)
程序语言
c
java
python
c++
go
javascript
swift
c#
操作系统
linux
ubuntu
centos
unix
数据库
oracle
mysql
mongodb
postgresql
框架
node.js
angular
react-native
avalon
django
twisted
hadoop
.net
移动开发
android
ios
搜索
Detached vs. Joinable POSIX线程
问题描述
投票:55
回答:1
我一直在使用qazxsw poi库来创建和连接C中的线程。
我应该何时从一开始就创建一个脱离的线程?与可连接线程相比,它是否提供任何性能优势?
在连接(默认)线程上不执行
pthread
是合法的吗?或者这样的线程是否应该在
pthread_join()
ing之前使用
detach()
函数?
c
linux
pthreads
detach
1个回答
73
投票
当你知道你不想用
pthread_exit()
等待它时,创建一个分离的线程。唯一的性能优势是,当分离的线程终止时,可以立即释放其资源,而不必在释放资源之前等待线程加入。
加入可连接线程是“合法的”;但是通常不建议这样做,因为(如前所述)在连接线程之前不会释放资源,所以如果你不加入它们,它们将无限期地保持捆绑(直到程序退出)。
最新问题
如何使用 Jest 检查某个元素是否可见?
在表单提交上关注第一个错误字段时,如何解决 Vendor.js 中的“未捕获的类型错误:无法读取未定义的属性 'charAt'”错误?
如何将 SFML 库链接到 cmake?
我无法显示sql中存储的数据
如何从此文件导入数据(参见 EC 的 URL)
Android OS 14 的 MQTT 错误:库中的“java.lang.SecurityException”
尝试使用 AOP springboot 拦截字段上的 setter
垂直 fancyapp 轮播不起作用,有关如何解决此问题的任何提示吗?
无证费率限制?几百封邮件后“资源已耗尽”
打印包含彩色项目的列表时,它会打印颜色代码
Rust reqwest 出现 411 错误,但相同的格式适用于其他语言(python、httpie)
简单的正则表达式问题对我来说似乎很难回答
共享扩展程序未出现在能够在 iPhone 上共享照片的应用程序列表中
在 PaperJS 中找到闭合路径(多边形)的质心
为什么Xlib规范不使用指针来构造Window?
从本地目录创建 git 存储库并使用它来初始化 github 上的远程存储库的最简洁方法
如何在 zip 文件存档器中创建文件夹 - node.js
std::(unordered_)map 和 std::(unordered_)set 共享代码吗?
IDE和框架的区别
为什么角度分量字段应该是公共的
© www.soinside.com 2019 - 2024. All rights reserved.