void task_thread() { std::packaged_task<int(int,int)> task(std::pow); std::future<int> result = task.get_future(); std::thread task_td(std::move(task), 2, 10); task_td.join(); std::cout << "task_thread:\t" << result.get() << '\n'; }
void task_thread() { std::packaged_task<int(int,int)> task(f); std::future<int> result = task.get_future(); // XXX: Can only retrieve one future! // std::future<int> r2 = task.get_future(); std::thread task_td(std::move(task), 2, 10); task_td.join(); std::cout << "task_thread:\t" << result.get() << '\n'; }