Namespaces
Variants

std::experimental:: future

From cppreference.net
定义于头文件 <experimental/future>
template < class T > class future ;
(1) (并发TS)
template < class T > class future < T & > ;
(2) (并发TS)
template <> class future < void > ;
(3) (并发TS)

类模板 std::experimental::future 通过以下操作扩展了 std::future

  • 一个从 future<future<T>> 进行展开的 解包构造函数
  • 用于查询关联共享状态是否就绪的成员函数 is_ready ;以及
  • 用于向 future 附加延续操作的成员函数 then

然而, std::experimental::future std::future 之间不存在互操作性。

目录

成员函数

构造 future 对象
(公开成员函数)
检查共享状态是否就绪
(公开成员函数)
为 future 附加延续操作
(公开成员函数)
移动 future 对象
(公开成员函数)

与 std::future 相同的成员

成员函数

注意 share() 返回一个 std::experimental::shared_future<T> 。除此之外行为完全相同。

析构 future 对象
( std::future<T> 的公开成员函数)
将共享状态从 * this 转移到 shared_future 并返回它
( std::future<T> 的公开成员函数)
获取结果
返回结果
( std::future<T> 的公开成员函数)
状态
检查 future 是否拥有共享状态
( std::future<T> 的公开成员函数)
等待结果变为可用
( std::future<T> 的公开成员函数)
等待结果,若在指定的超时时间内不可用则返回
( std::future<T> 的公开成员函数)
等待结果,若在指定的时间点之前不可用则返回
( std::future<T> 的公开成员函数)

示例

参见

(concurrency TS)
增强版 std::shared_future ,支持延续操作及其他特性
(类模板)