ATOMIC_*_LOCK_FREE
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
定义于头文件
<stdatomic.h>
|
||
|
#define ATOMIC_BOOL_LOCK_FREE /* 由实现定义 */
#define ATOMIC_CHAR_LOCK_FREE /* 由实现定义 */
|
(C11 起) | |
|
#define ATOMIC_CHAR8_T_LOCK_FREE /* 由实现定义 */
|
(C23 起) | |
扩展为
预处理器常量表达式
,其求值结果可能为
0
、
1
或
2
,用于指示相应
原子类型
(包括有符号和无符号版本)的无锁特性。
| 数值 | 说明 |
0
|
原子类型从不无锁 |
1
|
原子类型有时无锁 |
2
|
原子类型始终无锁 |
参考文献
- C17 标准 (ISO/IEC 9899:2018):
-
- 7.17.1/3 atomic lock-free 宏 (p: 200)
- C11 标准 (ISO/IEC 9899:2011):
-
- 7.17.1/3 原子无锁宏 (p: 273)