|
| constexpr | atomic (T value) noexcept |
| | 构造函数
|
| | operator T () const noexcept |
| | 类型转换运算符
|
|
| operator T () const volatile noexcept |
| | volatile版本的类型转换运算符
|
| T | operator= (T value) noexcept |
| | 赋值运算符
|
|
T | operator= (T value) volatile noexcept |
| | volatile版本的赋值运算符
|
| bool | is_lock_free () const noexcept |
| | 检查是否支持无锁操作
|
|
bool | is_lock_free () const volatile noexcept |
| | volatile版本的检查是否支持无锁操作
|
| void | store (T value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子存储操作
|
|
void | store (T value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子存储操作
|
| T | load (const memory_order mo=memory_order_seq_cst) const noexcept |
| | 原子加载操作
|
|
T | load (const memory_order mo=memory_order_seq_cst) const volatile noexcept |
| | volatile版本的原子加载操作
|
| T | exchange (T value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子交换操作
|
|
T | exchange (T value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子交换操作
|
| bool | compare_exchange_weak (T &expected, T desired, const memory_order success, const memory_order failure) noexcept |
| | 弱比较交换操作
|
|
bool | compare_exchange_weak (T &expected, T desired, const memory_order success, const memory_order failure) volatile noexcept |
| | volatile版本的弱比较交换操作
|
| bool | compare_exchange_weak (T &expected, T desired, const memory_order mo=memory_order_seq_cst) noexcept |
| | 简化版弱比较交换操作
|
|
bool | compare_exchange_weak (T &expected, T desired, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的简化版弱比较交换操作
|
| bool | compare_exchange_strong (T &expected, T desired, const memory_order success, const memory_order failure) noexcept |
| | 强比较交换操作
|
|
bool | compare_exchange_strong (T &expected, T desired, const memory_order success, const memory_order failure) volatile noexcept |
| | volatile版本的强比较交换操作
|
| bool | compare_exchange_strong (T &expected, T value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 简化版强比较交换操作
|
|
bool | compare_exchange_strong (T &expected, T value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的简化版强比较交换操作
|
template<typename T>
struct atomic< T >
通用原子类型模板
- 模板参数
-
提供通用类型的原子操作,支持任意可平凡复制的类型。
在文件 atomic.hpp 第 40 行定义.