当前位置: 技术问答>linux和unix
线程分离状态问题
来源: 互联网 发布时间:2016-12-22
本文导语: 线程被分离,是什么意思啊? | pthread_detach(threadid)函数的功能是使线程ID为threadid的线程处于分离状态,一旦线程处于分离状态,该线程终止时底层资源立即被回收;否则终止子线程的状态会...
线程被分离,是什么意思啊?
|
pthread_detach(threadid)函数的功能是使线程ID为threadid的线程处于分离状态,一旦线程处于分离状态,该线程终止时底层资源立即被回收;否则终止子线程的状态会一直保存(占用系统资源)直到主线程调用pthread_join(threadid,NULL)获取线程的退出状态。
除非是一个分离的线程,否则在线程退出时,它是不会释放它的资源的。pthread_detach函数将线程分离,它设置线程的内部选项来说明线程退出后,线程的存储空间可以被重新收回。分离线程退出时不会报告它们的状态。没有分离的线程是可接合的,而且被另一个线程为它们调用pthread_join或者整个进程退出之前,这些线程不会释放它们所有的资源。 pthread_join函数会使调用者等待待定的线程退出。为防止内存泄漏,长时间运行的程序最终应该为每个线程调用pthread_detach或pthread_join
除非是一个分离的线程,否则在线程退出时,它是不会释放它的资源的。pthread_detach函数将线程分离,它设置线程的内部选项来说明线程退出后,线程的存储空间可以被重新收回。分离线程退出时不会报告它们的状态。没有分离的线程是可接合的,而且被另一个线程为它们调用pthread_join或者整个进程退出之前,这些线程不会释放它们所有的资源。 pthread_join函数会使调用者等待待定的线程退出。为防止内存泄漏,长时间运行的程序最终应该为每个线程调用pthread_detach或pthread_join
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。