ATOMIC_*_LOCK_FREE

ATOMIC_*_LOCK_FREE

在头文件中定义
#define ATOMIC_CHAR32_T_LOCK_FREE / *实现定义* / #define ATOMIC_WCHAR_T_LOCK_FREE / *实现定义* / #define ATOMIC_CHAR32_T_LOCK_FREE / *实现定义* / #define ATOMIC_CHAR_LOCK_FREE / *实现定义* / #define ATOMIC_CHAR16_T_LOCK_FREE / *实现定义* #define ATOMIC_SHORT_LOCK_FREE / *实现定义* / #define ATOMIC_INT_LOCK_FREE / *实现定义* / #define ATOMIC_LONG_LOCK_FREE / *实现定义* / #define ATOMIC_LLONG_LOCK_FREE / *实现定义* / #define ATOMIC_POINTER_LOCK_FREE / *实现定义* /(自C11以来)

展开为预处理常量表达式,其计算结果为或01或者2表示相应原子类型(包括signed和unsigned)的无锁属性。

说明
0原子类型从不锁定
1原子类型有时是无锁的
2原子类型始终是无锁的

参考

  • C11标准(ISO / IEC 9899:2011):