我正在尝试弄清楚当一个分离的线程退出时,NPTL如何清理它的资源(堆栈空间等)。可连接的线程很容易,有一个对pthread_join的调用,它等待特定线程退出,然后回收它的资源。没问题,但是NPTL怎么知道分离的线程已经退出了呢?有没有人知道或者至少知道谁会知道?
谢谢你,瑞奇
发布于 2013-03-07 21:01:43
线程函数返回后,NPTL将检查线程是否被分离,如果被分离,则直接释放线程的所有内容,如果被加入,则将线程控制块( TCB )留给pthread_join来释放TCB。
对于细节,http://raison.gegahost.net/?p=91可能会有所帮助。
https://stackoverflow.com/questions/15261787
复制相似问题