std::async 用法
1 | template<class Fn, class... Args> |
- std::launch::async
系统默认,调用时创建新线程, - std::launch::deferred
延迟到std::future调用wait()或者get()时才执行,主线程调用,不创建新线程
std::async 封装
1 | template <typename F, typename... Args> |
std::future 用法
std::future_status 三种状态
- deferred
异步操作待开始 - ready
异步操作完成 - timeout
异步操作超时