Detached vs. Joinable POSIX线程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Detached vs. Joinable POSIX线程相关的知识,希望对你有一定的参考价值。
我一直在使用qazxsw poi库来创建和连接C中的线程。
- 我应该何时从一开始就创建一个脱离的线程?与可连接线程相比,它是否提供任何性能优势?
- 在连接(默认)线程上不执行
pthread
是合法的吗?或者这样的线程是否应该在pthread_join()
ing之前使用detach()
函数?
答案
- 当你知道你不想用
pthread_exit()
等待它时,创建一个分离的线程。唯一的性能优势是,当分离的线程终止时,可以立即释放其资源,而不必在释放资源之前等待线程加入。 - 加入可连接线程是“合法的”;但是通常不建议这样做,因为(如前所述)在连接线程之前不会释放资源,所以如果你不加入它们,它们将无限期地保持捆绑(直到程序退出)。
以上是关于Detached vs. Joinable POSIX线程的主要内容,如果未能解决你的问题,请参考以下文章
pthread_detach()与pthread_join的区别?
pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate)