Ado*_*bri 2 c++ std c++11 stdasync stdthread
如果我是对的,std :: async使用一个新线程并调用其中的方法.我想知道如果主线程或父线程死亡会发生什么.控制异步方法的线程是否也会死亡.
Jon*_*ely 7
C++中没有"父"线程的概念,每个线程都独立于它创建的线程.但是,该main线程是特殊的,如果它返回main()或调用,exit()则即使其他线程仍在运行,整个应用程序也会终止.一旦发生这种情况,如果仍在运行的线程访问主线程堆栈上的任何全局变量或自动对象,或者使用任何标准库对象或调用信号处理程序中不允许的任何函数,则程序具有未定义的行为.
main
main()
exit()
简而言之,main如果您期望合理的结果,请不要让其他线程在完成后运行.
归档时间:
13 年,5 月 前
查看次数:
533 次
最近记录: