detach join
时间: 2024-03-31 12:15:38 浏览: 56
在使用多线程编程时,detach()函数和join()函数是用来处理线程资源的两种方式。detach()函数将线程的控制权交给操作系统,使得线程成为一个独立的线程,不再受主线程的控制,也不会阻塞主线程。这意味着,被detach()的线程将独立运行,直到它自己结束。而join()函数会阻塞当前线程,直到被调用join()的线程执行完毕并退出。在这个过程中,调用join()的线程会一直等待,直到被等待的线程退出。如果没有调用join()函数,被等待的线程退出后,它的资源不会被回收,可能会导致内存泄漏。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [【C++】多线程用例子区别join和detatch](https://blog.csdn.net/weixin_39390491/article/details/129683576)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [c++11中关于std::thread的join的详解](https://download.csdn.net/download/weixin_38751537/13990981)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文