命名空间
变体
操作

std::future_errc

来自 cppreference.com
< cpp‎ | thread
 
 
并发支持库
线程
(C++11)
(C++20)
this_thread 命名空间
(C++11)
(C++11)
(C++11)
协作式取消
互斥
(C++11)
通用锁管理
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
条件变量
(C++11)
信号量
闩锁和屏障
(C++20)
(C++20)
期货
(C++11)
(C++11)
(C++11)
(C++11)
future_errc
(C++11)
安全回收
(C++26)
危险指针
原子类型
(C++11)
(C++20)
原子类型的初始化
(C++11)(C++20 中已弃用)
(C++11)(C++20 中已弃用)
内存排序
原子操作的自由函数
原子标志的自由函数
 
std::future_errc
 
定义在头文件 <future>
enum class future_errc {

    broken_promise             = /* 实现定义 */,
    future_already_retrieved   = /* 实现定义 */,
    promise_already_satisfied  = /* 实现定义 */,
    no_state                   = /* 实现定义 */

};
(自 C++11 起)

作用域枚举 std::future_errc 定义了由 std::future 和相关类在 std::future_error 异常对象中报告的错误代码。仅需要四个错误代码,尽管实现可以定义其他错误代码。由于提供了 std::is_error_code_enum 的适当特化,因此类型为 std::future_errc 的值可以隐式转换为 std::error_code.

所有错误代码都是不同的且非零。

内容

[编辑] 成员常量

名称 解释
broken_promise 异步任务放弃了其共享状态
future_already_retrieved 共享状态的内容已通过 std::future 访问
promise_already_satisfied 尝试两次在共享状态中存储值
no_state 尝试访问 std::promisestd::future 而不使用关联的共享状态

[编辑] 非成员函数

构造期货错误代码
(函数) [编辑]
构造期货 error_condition
(函数) [编辑]

[编辑] 辅助类

扩展类型特征 std::is_error_code_enum 以识别期货错误代码
(类模板) [编辑]

[编辑] 示例

[编辑] 缺陷报告

以下更改行为的缺陷报告被追溯应用到先前发布的 C++ 标准。

DR 应用于 发布的行为 正确行为
LWG 2056 C++11 broken_promise 被指定为零,这通常用于表示“没有错误” 指定为非零

[编辑] 另请参阅

保存平台相关的错误代码
(类) [编辑]
保存可移植的错误代码
(类) [编辑]