|
| | operator long long () const noexcept |
| | 类型转换运算符
|
|
| operator long long () const volatile noexcept |
| | volatile版本的类型转换运算符
|
| bool | is_lock_free () const noexcept |
| | 检查是否支持无锁操作
|
| void | store (long long value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子存储操作
|
| long long | load (const memory_order mo=memory_order_seq_cst) const noexcept |
| | 原子加载操作
|
| long long | exchange (long long value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子交换操作
|
| bool | compare_exchange_weak (long long &expected, long long desired, const memory_order success, const memory_order failure) noexcept |
| | 弱比较交换操作
|
| bool | compare_exchange_strong (long long &expected, long long desired, const memory_order success, const memory_order failure) noexcept |
| | 强比较交换操作
|
| constexpr | atomic_base (value_type value) noexcept |
| | 构造函数
|
| | operator value_type () const noexcept |
| | 类型转换运算符
|
|
| operator value_type () const volatile noexcept |
| | volatile版本的类型转换运算符
|
| value_type | operator= (value_type value) noexcept |
| | 赋值运算符
|
|
value_type | operator= (value_type value) volatile noexcept |
| | volatile版本的赋值运算符
|
| value_type | operator++ (int) noexcept |
| | 后置递增运算符
|
|
value_type | operator++ (int) volatile noexcept |
| | volatile版本的后置递增运算符
|
| value_type | operator-- (int) noexcept |
| | 后置递减运算符
|
|
value_type | operator-- (int) volatile noexcept |
| | volatile版本的后置递减运算符
|
| value_type | operator++ () noexcept |
| | 前置递增运算符
|
|
value_type | operator++ () volatile noexcept |
| | volatile版本的前置递增运算符
|
| value_type | operator-- () noexcept |
| | 前置递减运算符
|
|
value_type | operator-- () volatile noexcept |
| | volatile版本的前置递减运算符
|
| value_type | operator+= (value_type value) noexcept |
| | 加法赋值运算符
|
|
value_type | operator+= (value_type value) volatile noexcept |
| | volatile版本的加法赋值运算符
|
| value_type | operator-= (value_type value) noexcept |
| | 减法赋值运算符
|
|
value_type | operator-= (value_type value) volatile noexcept |
| | volatile版本的减法赋值运算符
|
| value_type | operator&= (value_type value) noexcept |
| | 位与赋值运算符
|
|
value_type | operator&= (value_type value) volatile noexcept |
| | volatile版本的位与赋值运算符
|
| value_type | operator|= (value_type value) noexcept |
| | 位或赋值运算符
|
|
value_type | operator|= (value_type value) volatile noexcept |
| | volatile版本的位或赋值运算符
|
| value_type | operator^= (value_type value) noexcept |
| | 位异或赋值运算符
|
|
value_type | operator^= (value_type value) volatile noexcept |
| | volatile版本的位异或赋值运算符
|
| bool | is_lock_free () const noexcept |
| | 检查是否支持无锁操作
|
|
bool | is_lock_free () const volatile noexcept |
| | volatile版本的检查是否支持无锁操作
|
| MSTL_ALWAYS_INLINE void | store (value_type value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子存储操作
|
|
MSTL_ALWAYS_INLINE void | store (value_type value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子存储操作
|
| MSTL_ALWAYS_INLINE value_type | load (const memory_order mo=memory_order_seq_cst) const noexcept |
| | 原子加载操作
|
|
MSTL_ALWAYS_INLINE value_type | load (const memory_order mo=memory_order_seq_cst) const volatile noexcept |
| | volatile版本的原子加载操作
|
| MSTL_ALWAYS_INLINE value_type | exchange (value_type value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子交换操作
|
|
MSTL_ALWAYS_INLINE value_type | exchange (value_type value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子交换操作
|
| MSTL_ALWAYS_INLINE bool | compare_exchange_weak (value_type &expected, value_type desired, const memory_order success, const memory_order failure) noexcept |
| | 弱比较交换操作
|
|
MSTL_ALWAYS_INLINE bool | compare_exchange_weak (value_type &expected, value_type desired, const memory_order success, const memory_order failure) volatile noexcept |
| | volatile版本的弱比较交换操作
|
| MSTL_ALWAYS_INLINE bool | compare_exchange_weak (value_type &expected, value_type desired, const memory_order mo=memory_order_seq_cst) noexcept |
| | 简化版弱比较交换操作
|
|
MSTL_ALWAYS_INLINE bool | compare_exchange_weak (value_type &expected, value_type desired, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的简化版弱比较交换操作
|
| MSTL_ALWAYS_INLINE bool | compare_exchange_strong (value_type &expected, value_type desired, const memory_order success, const memory_order failure) noexcept |
| | 强比较交换操作
|
|
MSTL_ALWAYS_INLINE bool | compare_exchange_strong (value_type &expected, value_type desired, const memory_order success, const memory_order failure) volatile noexcept |
| | volatile版本的强比较交换操作
|
| MSTL_ALWAYS_INLINE bool | compare_exchange_strong (value_type &expected, value_type desired, const memory_order mo=memory_order_seq_cst) noexcept |
| | 简化版强比较交换操作
|
|
MSTL_ALWAYS_INLINE bool | compare_exchange_strong (value_type &expected, value_type desired, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的简化版强比较交换操作
|
| MSTL_ALWAYS_INLINE void | wait (value_type old, const memory_order mo=memory_order_seq_cst) const noexcept |
| | 等待值改变
|
|
MSTL_ALWAYS_INLINE void | notify_one () noexcept |
| | 通知一个等待线程
|
|
MSTL_ALWAYS_INLINE void | notify_all () noexcept |
| | 通知所有等待线程
|
| MSTL_ALWAYS_INLINE value_type | fetch_add (value_type value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子获取并添加操作
|
|
MSTL_ALWAYS_INLINE value_type | fetch_add (value_type value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子获取并添加操作
|
| MSTL_ALWAYS_INLINE value_type | fetch_sub (value_type value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子获取并减去操作
|
|
MSTL_ALWAYS_INLINE value_type | fetch_sub (value_type value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子获取并减去操作
|
| MSTL_ALWAYS_INLINE value_type | fetch_and (value_type value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子获取并与操作
|
|
MSTL_ALWAYS_INLINE value_type | fetch_and (value_type value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子获取并与操作
|
| MSTL_ALWAYS_INLINE value_type | fetch_or (value_type value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子获取并或操作
|
|
MSTL_ALWAYS_INLINE value_type | fetch_or (value_type value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子获取并或操作
|
| MSTL_ALWAYS_INLINE value_type | fetch_xor (value_type value, const memory_order mo=memory_order_seq_cst) noexcept |
| | 原子获取并异或操作
|
|
MSTL_ALWAYS_INLINE value_type | fetch_xor (value_type value, const memory_order mo=memory_order_seq_cst) volatile noexcept |
| | volatile版本的原子获取并异或操作
|
long long类型的原子特化
在文件 atomic.hpp 第 655 行定义.