当我们在main中创建Detached线程时。 并且主要出口...是否分离的线程继续进行还是像普通的Joinable线程一样退出?
答案 0 :(得分:4)
这完全取决于主线程如何退出。如果它使用exit()
退出或从main()
返回,则退出整个过程,并终止每个线程。
但是,如果它使用pthread_exit()
终止,则该过程继续运行。
答案 1 :(得分:1)
如果这是另一个线程然后是主线程,其他线程将继续。但C99标准说
如果主要的返回类型 function是一种兼容的类型 int,从最初的调用返回到 主要功能相当于 调用退出函数......
(现在所有常见平台都会从int
返回main
,特别是POSIX要求这样做。)
exit
州的POSIX页面
这些功能将终止 呼叫过程......
总而言之,main
的返回会终止整个程序,包括所有线程。