有一种说法:“主线程退出,子线程也会跟着退出”,其实这是不严谨的, 在linux下其实是没有所谓的“主线程”和“子线程”区分的,都是线程,只不过main函数比较特殊,如果main函数执行到最后 return 0退出,这里的return 其实会默认调用函数exit,然后退出该进程,因为进程运行完毕,退出导致所有创建的线程也跟着退出了。如果我们在子线程中,调用 pthread_cancel(main_tid) 提前终止main,那么子线程是不会退出的。
Linux:主线程退出对子线程的影响
最后发布:2020-11-03 21:49:07首次发布:2020-11-03 21:49:07