1
如何使用線程期貨向量從一組線程獲取返回值?這應該工作嗎?如果不是,我該如何適應它?如何使用助推線期貨向量?
int calculate_the_answer_to_life_the_universe_and_everything()
{
return 42;
}
vector<packaged_task<int> > tasks;
vector<unique_future<int> > futures;
for (int i=0; i < 4; ++i)
{
tasks.push_back(packaged_task<int>(calculate_the_answer_to_life_the_universe_and_everything));
futures.push_back(tasks.back().get_future());
thread task(tasks.back());
}
boost::wait_for_all(futures.begin(), futures.end());
我只是好奇,沒有移動語義,如何存儲一組任務或期貨?是否還可以存儲一組shared_ptr>(或期貨)? –