std::future
有一个std::future::valid
方法,用于指示未来对象是否引用某些共享状态。没有构造函数构造引用共享状态的未来对象(移动构造函数除外,它可以将共享状态从一个未来对象移动到另一个对象)。 全部类的方法(get
,wait
,wait_for
和wait_until
要求将来的对象以共享状态作为前提条件(它们如果valid() == false
)有未定义的行为。std::future
如何获得某些共享状态并变得有用?
答案 0 :(得分:2)
您通常不会单独使用std::future
;你使用它std::promise
。 std::promise
constructors设置了一些共享状态。然后,您可以使用std::promise::get_future()
方法获取引用该共享状态的std::future
。