分离的线程

时间:2010-08-15 09:27:26

标签: c

当我们在main中创建Detached线程时。 并且主要出口...是否分离的线程继续进行还是像普通的Joinable线程一样退出?

2 个答案:

答案 0 :(得分:4)

这完全取决于主线程如何退出。如果它使用exit()退出或从main()返回,则退出整个过程,并终止每个线程。

但是,如果它使用pthread_exit()终止,则该过程继续运行。

答案 1 :(得分:1)

如果这是另一个线程然后是主线程,其他线程将继续。但C99标准说

  

如果主要的返回类型   function是一种兼容的类型   int,从最初的调用返回到   主要功能相当于   调用退出函数......

(现在所有常见平台都会从int返回main,特别是POSIX要求这样做。)

exit州的POSIX页面

  

这些功能将终止   呼叫过程......

总而言之,main的返回会终止整个程序,包括所有线程。