Namespaces
Variants

std:: future_errc

From cppreference.net
Concurrency support library
Threads
(C++11)
(C++20)
this_thread namespace
(C++11)
(C++11)
Cooperative cancellation
Mutual exclusion
Generic lock management
Condition variables
(C++11)
Semaphores
Latches and Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
(C++11)
future_errc
(C++11)
Safe reclamation
Hazard pointers
Atomic types
(C++11)
(C++20)
Initialization of atomic types
(C++11) (deprecated in C++20)
(C++11) (deprecated in C++20)
Memory ordering
(C++11) (deprecated in C++26)
Free functions for atomic operations
Free functions for atomic flags
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::promise std::future

非成员函数

构造 future 错误码
(函数)
构造 future error_condition
(函数)

辅助类

扩展类型特征 std::is_error_code_enum 以识别 future 错误码
(类模板)

示例

缺陷报告

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

缺陷报告 应用于 发布时的行为 正确行为
LWG 2056 C++11 broken_promise 被指定为零值,而零值通常用于表示“无错误” 指定为非零值

参见

(C++11)
保存平台相关的错误代码
(类)
保存可移植的错误代码
(类)