是什么给了 std::future 一些共享状态
What gives a std::future some shared state
std::future
有一个std::future::valid
方法,它指示未来对象是否引用某个共享状态。没有任何构造函数构造引用共享状态的未来对象(移动构造函数除外,它可以将共享状态从一个未来对象移动到另一个未来对象)。类的所有方法(get
、wait
、wait_for
和wait_until
都要求未来对象具有共享状态作为前提条件(如果valid() == false
,它们具有未定义的行为)。那么,std::future
如何获得某种共享状态并变得有用呢?
您通常不会孤立地使用std::future
;您可以将其与std::promise
一起使用。构造std::promise
设置了一些共享状态。然后,可以使用std::promise::get_future()
方法获取引用该共享状态的std::future
。
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 是否可以通过C++扩展强制多个python进程共享同一内存
- 在cuda线程之间共享大量常量数据
- 如何从具有移动语义的类对象中生成共享指针
- 在c代码之间共享数据的最佳方式
- 在两个类中共享相同的函数调用,并在不需要时避免空实例化
- 将静态库链接到不带-fPIC的共享库中
- Constexpr替代了新的放置方式,可以让内存中的对象保持未初始化状态
- 我不断收到 [错误] ID 返回 1 退出状态错误,但看不到问题所在
- 为什么std::互斥需要很长的、非常不规则的时间来共享
- OSX MetalKit CVMetalTextureCacheCreateTextureFromImage失败,状态:
- 使用Boost Interprocess创建托管共享内存需要很长时间
- 通过require在不同的Lua状态之间共享全局变量
- 在C++中共享基础状态
- 识别打开的共享内存状态的方法
- 是什么给了 std::future 一些共享状态
- 多线程插件体系结构中的共享、单侧可变状态
- 这是存储 std::分配器状态的正确方法 - 在这种情况下,由 Windows 上的共享内存支持
- OpenGL的状态需要在新的共享上下文上重置
- 持有大共享状态的访问者类:实现引用语义的最佳方式