std::thread

C++ 11的線程庫啟動一個線程是非常簡單的,只需要創建一個std::thread對象,就會啟動一個線程,并使用該std::thread對象來管理該線程。

do_task();
std::thread(do_task);
  • detach方式,啟動的線程自主在后臺運行,當前的代碼繼續往下執行,不等待新線程結束。
  • join方式,等待啟動的線程完成,才會繼續往下執行。假如前面的代碼使用這種方式,其輸出就會0,1,2,3,因為每次都是前一個線程輸出完成了才會進行下一個循環,啟動下一個新線程。

std::mutex

項目擼完了再填坑。。。

參考文獻

[1] C++工程師帶你走進多核多線程線程管理

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。