命名空间
变体
操作

并发扩展

来自 cppreference.cn
< cpp‎ | 实验性

C++ 并发扩展,ISO/IEC TS 19571:2016,定义了以下 C++ 标准库新组件

目录

[编辑] std::future 的延续和其他扩展

定义于头文件 <experimental/future>
(并发技术规范)
增强了延续和其他功能的 std::future 版本
(类模板) [编辑]
(并发技术规范)
增强了延续和其他功能的 std::shared_future 版本
(类模板) [编辑]
(并发技术规范)
使用 std::experimental::futurestd::promise 的修改版本
(类模板)
(并发技术规范)
使用 std::experimental::futurestd::packaged_task 的修改版本
(类模板)
(并发技术规范)
当所有给定的 future 或 shared_futures 准备就绪时,产生一个就绪的 future
(函数模板) [编辑]
(并发技术规范)
当至少一个给定的 future 或 shared_futures 准备就绪时,产生一个就绪的 future
(函数模板) [编辑]
(并发技术规范)
立即产生一个就绪并持有给定值的 future
(函数模板) [编辑]
(并发技术规范)
立即产生一个就绪并持有给定异常的 future
(函数模板) [编辑]

[编辑] 特性测试宏

定义于头文件 <experimental/future>
__cpp_lib_experimental_future_continuations
值至少为 201505 表示支持 future::then 和其他扩展
(宏常量)
在头文件 <experimental/latch> 中定义
__cpp_lib_experimental_latch
值至少为 201505 表示支持锁存器类型
(宏常量)
在头文件 <experimental/barrier> 中定义
__cpp_lib_experimental_barrier
值至少为 201505 表示支持屏障类型
(宏常量)
在头文件 <experimental/atomic> 中定义
__cpp_lib_experimental_atomic_smart_pointers
值至少为 201505 表示支持原子智能指针
(宏常量)

[编辑] 已合并到 C++20

并发 TS 的以下组件已纳入 C++20 标准。

[编辑] 锁存器和屏障

在头文件 <experimental/latch> 中定义
(并发技术规范)
一次性线程屏障
(类) [编辑]
在头文件 <experimental/barrier> 中定义
(并发技术规范)
可重用线程屏障
(类) [编辑]
(并发技术规范)
具有可自定义完成行为的可重用线程屏障
(类) [编辑]

[编辑] 原子智能指针

这些类模板取代了 shared_ptr 的 原子函数重载

在头文件 <experimental/atomic> 中定义
(并发技术规范)
std::shared_ptr 的原子版本
(类模板) [编辑]
(并发技术规范)
std::weak_ptr 的原子版本
(类模板) [编辑]