C++异步并发支持库future
future:
1.利用共享状态来异步的获取提供者的值
2.future处于共享状态就绪时才是有效的
3.future不能拷贝构造,只能移动构造,并且移动构造后共享状态失效
std::future::get
1.当共享状态就绪时,返回存储在共享状态中的值。
2.如果共享状态尚未就绪,则该函数会阻塞等待,直到共享状态就绪
3.get之后共享状态失效,也就是就绪后只能get一次
std::future::wait()
等待共享状态就绪,不就绪就阻塞
三个提供者:
- async
- promise::get_future
- packaged_task::get_future