我在Visual studio C++中做了一些多线程编程,使用了beginthreadex,endthreadex调用。
我创建了一个子线程thread1。子线程运行在一个永远不会退出的函数上,因为它有一个无限循环。现在,如果父线程因错误而终止或成功完成,子线程是否也会退出?我的疑问是--是否存在子线程即使在主程序退出后仍处于活动状态的情况?对于linux,这种情况应该是怎样的呢?
在linux中,无论主线程是通过函数exit()还是从main返回,只要主线程终止,整个进程就会退出。如果主线程从main()返回,它将返回到名为crt.o或类似的"C运行时“。在crt.o中,其c代码如下: exit( main (argc,argv));exit()将由主线程调用我的想法看起来对吗?如果crt.o中的exit()被一个线程终止函数替换,比如