我正在试图弄清楚NPTL如何清理a的资源(堆栈空间等) 脱离线程退出时。可连接的线程很简单,可以调用pthread_join 等待特定线程退出然后回收其资源。没问题,但是 NPTL如何知道分离的线程已经退出?有谁知道或至少知道谁 会知道的吗?
感谢, 富
答案 0 :(得分:0)
线程函数返回后,NPTL将检查线程是否已分离,如果它是分离的,它将直接释放线程的所有内容,如果它已加入,它将把线程控制块(TCB)留给pthread_join释放TCB。
有关详细信息,http://raison.gegahost.net/?p=91可能有所帮助。