[問題] std::promise的疑問
小弟我在研究C++11的std::promise
找到這篇文章
http://thispointer.com/c11-multithreading-part-8-stdfuture-stdpromise-and-returning-values-from-thread/
然後根據他的範例code操作
範例code如下
#include <iostream>
#include <thread>
#include <future>
void initiazer(std::promise<int> * promObj)
{
std::cout<<"Inside Thread"<<std::endl; promObj->set_value(35);
}
int main()
{
std::promise<int> promiseObj;
std::future<int> futureObj = promiseObj.get_future();
std::thread th(initiazer, &promiseObj);
std::cout<<futureObj.get()<<std::endl;
th.join();
return 0;
}
但是在單步執行產生了疑問,為什麼在th建構階段時就可以讓future取得value了??
我一直以為要到join的階段
懇請各位版友解惑
謝謝
--
起初,航艦戰鬥群肆虐洋面,神的靈行走在水面上。神說,要有飛彈!於是就有了KS-1
神看這東西不頂事,於是著俄國人發展出了很多種反艦飛彈。神說,飛彈要導引,還要
有人工智慧。神說,飛彈需要載機載艦,神看著這是好的。神說,飛彈需要獲得目標,
於是有敢死雷達機。神說,天上要有核子動力人造衛星。神說,要在巴倫支海進行九十
秒內百枚飛彈彈著演習。神看著這是好的,就歇了他一切的工、安息了。
美國海軍感到敬畏,於是推出了神盾戰鬥系統。 神說:F...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.68.172.54
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1517035290.A.749.html
推
01/27 16:07,
7年前
, 1F
01/27 16:07, 1F
→
01/27 16:08,
7年前
, 2F
01/27 16:08, 2F
推
01/27 16:13,
7年前
, 3F
01/27 16:13, 3F
→
01/27 16:13,
7年前
, 4F
01/27 16:13, 4F
→
01/27 16:14,
7年前
, 5F
01/27 16:14, 5F