C++11
實現線程函數,其參數為std::promise類型,該線程函數挪用promise的接口set_value進行傳值

本家兒線程中界說promise對象,然后經由過程這個對象獲取future對象

啟動線程函數,然后將上一步調界說的promise對象經由過程指針傳遞進去

然后本家兒線程經由過程挪用future的函數get來梗阻期待線程的返回值

調試運行輸出如下成果,從這個成果可以看出future當作功獲取線程返回的值

最后再來總結下,先界說promise對象,從promise對象獲取futrue對象, 接著啟動線程,線程經由過程promise對象將值傳遞歸去,而本家兒線程挪用future對象梗阻期待

別的需要注重的是promise的set_value只能設置一次,而且凡是promise與future配對利用

若是promise的set_value設置兩次,就會呈現如下圖所示的錯誤,然后程序退出

0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!