1#ifndef NEFORCE_CORE_ASYNC_MEMORY_ORDER_HPP__
2#define NEFORCE_CORE_ASYNC_MEMORY_ORDER_HPP__
13NEFORCE_BEGIN_NAMESPACE__
210 return failure_order | modifiers;
228NEFORCE_END_NAMESPACE__
long long int64_t
64位有符号整数类型
NEFORCE_CONST_FUNCTION NEFORCE_CONSTEXPR14 enable_if_t< is_floating_point_v< T >, T > mod(const T x, const T y)
浮点数取模运算
constexpr bool is_valid_cmpexch_failure_order(const memory_order mo) noexcept
检查比较交换失败内存顺序是否有效
NEFORCE_INLINE17 constexpr auto memory_order_acq_rel
获取-释放内存顺序常量
constexpr memory_order operator|(memory_order mo, memory_order_modifier mod) noexcept
内存顺序与修饰符的或操作符
NEFORCE_INLINE17 constexpr auto memory_order_consume
数据依赖内存顺序常量
NEFORCE_INLINE17 constexpr auto memory_order_release
释放内存顺序常量
NEFORCE_INLINE17 constexpr auto memory_order_seq_cst
顺序一致性内存顺序常量
constexpr memory_order operator&(memory_order mo, memory_order_modifier mod) noexcept
内存顺序与修饰符的与操作符
NEFORCE_INLINE17 constexpr auto memory_order_relaxed
宽松内存顺序常量
NEFORCE_INLINE17 constexpr auto memory_order_acquire
获取内存顺序常量
memory_order_modifier
内存顺序修饰符枚举
constexpr memory_order cmpexch_failure_order(const memory_order mo) noexcept
获取原子比较交换操作失败时的内存顺序
@ release
释放操作,确保前面的读写不会被重排到后面
@ acquire
获取操作,确保后续读写不会被重排到前面
@ consume
数据依赖顺序,用于依赖读取的场景
@ memory_order_mask
内存顺序掩码
@ memory_order_modifier_mask
修饰符掩码
@ memory_order_hle_acquire
HLE获取修饰符
@ memory_order_hle_release
HLE释放修饰符