专注于技术 心无旁骛 - justforfan528

Linux技术| 网络编程coding | 网络安全Cyber Security | study |

 

导航

Linux下的多线程问题找到原因了

前几天,写了一段多线程的代码,发现当创建的线程数(包括已经退出的线程)累计到一定程度后,就不能再创建新的线程了。今天发现原来是自己的程序没写对。
在linux下,新创建的子线程,默认情况下在线程结束时,是不会自动释放资源的。要释放资源必须通过
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED)
设置线程属性,或者在创建线程后通过
int pthread_detach(pthread_t th);
进行设置。

posted on 2007-09-30 09:25  游荡者  阅读(433)  评论(0编辑  收藏  举报