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