cpp5 std::packaged_task

类似于std::function,它会把结果自动到转移到future对象

int countdown (int from, int to) {
  for (int i=from; i!=to; --i) {
    std::cout << i << '\n';
    std::this_thread::sleep_for(std::chrono::seconds(1));
  }
  std::cout << "Lift off!\n";
  return from-to;
}
std::packaged_task<int(int,int)> tsk (countdown);   // set up packaged_task
  std::future<int> ret = tsk.get_future(); 
posted @ 2021-07-20 17:29  MoonXu  阅读(55)  评论(0编辑  收藏  举报