查看 boost 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);
}
我不太明白这是怎么回事。一旦 packaged_task
被销毁,这不会总是抛出 broken_promise
异常吗?
最佳答案
关于c++ - boost::async - 不确定实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13327141/