0

ブースト 1.52の新しいboost::async実装を見ると、次の実装について少し確信が持てませんlaunch::deferred

else if (int(policy) & int(launch::deferred))
{
  packaged_task<R> pt( boost::forward<F>(f) );

  BOOST_THREAD_FUTURE<R> ret = pt.get_future();
  return ::boost::move(ret);
}

これがどのように機能するのかよくわかりません。が破棄されるとすぐに、これは常にbroken_promise例外をスローしませんか?packaged_task

4

1 に答える 1