C++11thread之detach()与join()的函数对比
生活随笔
收集整理的這篇文章主要介紹了
C++11thread之detach()与join()的函数对比
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在聲明一個(gè)std::thread對(duì)象之后,都可以使用detach和join函數(shù)來(lái)啟動(dòng)被調(diào)線程,區(qū)別在于兩者是否阻塞主調(diào)線程。
(1)當(dāng)使用join()函數(shù)時(shí),主調(diào)線程阻塞,等待被調(diào)線程終止,然后主調(diào)線程回收被調(diào)線程資源,并繼續(xù)運(yùn)行;
(2)當(dāng)使用detach()函數(shù)時(shí),主調(diào)線程繼續(xù)運(yùn)行,被調(diào)線程駐留后臺(tái)運(yùn)行,主調(diào)線程無(wú)法再取得該被調(diào)線程的控制權(quán)。當(dāng)主調(diào)線程結(jié)束時(shí),由運(yùn)行時(shí)庫(kù)負(fù)責(zé)清理與被調(diào)線程相關(guān)的資源。
?
總結(jié)
以上是生活随笔為你收集整理的C++11thread之detach()与join()的函数对比的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux环境崩溃生成core文件以及调
- 下一篇: C++对象继承中的内存布局