在相应的承诺离开范围后有效使用未来
Valid to use future after corresponding promise leaves scope
如果从promise
中提取future
,在promise
离开作用域后调用future::get_value
是否有效?
std::future<void> future;
{
std::promise<void> promise;
future = promise.get_future();
promise.set_value();
}
future.wait();
我无法使用承诺和未来的文档找到答案。
承诺和未来具有共享状态。
一个承诺没有实现并被摧毁的未来是一个违背的承诺。 共享状态被赋予异常并准备就绪。
但是,一个承诺被实现然后承诺被摧毁的未来是完全可以的。 共享状态保持不变。
查看主文档页面上~promise
和有关共享状态的讨论。
相关文章:
- 欧拉项目#8答案是大以获得有效答案
- 在Linux中哪里可以找到互斥、未来等的源代码
- 调整大小后指向元素值的指针unordered_map有效?
- 为什么是0;C++中的有效语句
- 最高有效数字侧的第N位
- GCC对可能有效的代码抛出init list生存期警告
- 有效地使用std::unordered_map来插入或增加键的值
- c++中O(n^(1/3))中一个数的除数的有效计数
- 使用无符号字符数组有效存储内存
- C++:Application.cpp中抛出了未解析的外部符号(解决方案在问题的末尾,供未来的读者参考)
- 自定义先决条件对移动分配运算符有效吗
- 使用 std::string () const 函数启动线程或未来
- 为什么将值返回函数传递给重载=运算符对运算符函数有效,而对其他运算符无效
- 有哪些有效的方法可以消除一组 100 万个字符串>重复数据?
- 为什么这种直接初始化有效?(C++17)
- 递归函数有效,但无法记忆
- 在C++中初始化向量映射的最有效方法
- 如果变量名称不跟在 char* 后面,const char* 是否有效?
- 钳制迭代器是否有效
- 在相应的承诺离开范围后有效使用未来