C++ 我必须分离或加入pthread吗?

C++ 我必须分离或加入pthread吗?,c++,pthreads,C++,Pthreads,pthread\u detach()文档说明: pthread\u detach()函数应指示实现 线程的存储可以在该线程运行时回收 终止 如果我创建了一个可连接的线程,但没有分离或连接它,会产生什么后果?该线程的资源不会被回收?您回答了自己的问题吗?线程需要系统中的某些资源。这些将一直保留,直到线程被连接,或者线程被分离并终止。(在您分离线程之前,系统必须假设您将在将来某个时候加入它,并且无法释放资源。)没错;如果既不加入也不分离线程,则会泄漏资源 每个线程将为其堆栈分配一些内存,可能还有一些

pthread\u detach()
文档说明:

pthread\u detach()
函数应指示实现 线程的存储可以在该线程运行时回收 终止


如果我创建了一个可连接的线程,但没有分离或连接它,会产生什么后果?该线程的资源不会被回收?

您回答了自己的问题吗?线程需要系统中的某些资源。这些将一直保留,直到线程被连接,或者线程被分离并终止。(在您分离线程之前,系统必须假设您将在将来某个时候加入它,并且无法释放资源。)

没错;如果既不加入也不分离线程,则会泄漏资源


每个线程将为其堆栈分配一些内存,可能还有一些控制结构,并且不会释放这些内存。在某些操作系统上,可以启动的线程数量是有限制的,最终可能会达到无法再启动的状态。

仅为连接操作保留的与线程相关的资源(即状态代码和稍多的资源)

“Detached”只是意味着我不打算在这个线程上调用join,所以在线程完成时清理特定于线程的数据(这将通过调用join来完成)