[英]When thread release its resources
在pthread_detach
手册页中,我读到当任何线程被分离时,然后在线程终止时它将其资源释放回系统。
什么是线程资源?它是该线程使用的内存的一部分,如果是,则该内存是进程地址空间的一部分。 我试图理解这一点,但我得到了它。
那么可连接线程呢,什么时候线程释放它的资源? 在pthread_join
或在终止或处理时?
在pthread_cancel
命令中释放资源时。
每个线程都会占用操作系统中的一些簿记资源,以及用户空间内存中自己的执行堆栈。 线程被销毁时会释放这些资源,这可能在多种情况下发生,例如:
pthread_join
在可连接线程上调用时返回, main
返回正常或exit
调用, exec
被成功调用。 但是,可以退出运行main
的线程并使其他已分离的线程继续运行。 为此,您必须在主线程中调用pthread_exit
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.