ATOMIC_*_LOCK_FREE
|
|
Defined in header
<stdatomic.h>
|
||
#define ATOMIC_BOOL_LOCK_FREE /* implementation-defined */
#define ATOMIC_CHAR_LOCK_FREE /* implementation-defined */
|
(since C11) | |
#define ATOMIC_CHAR8_T_LOCK_FREE /* implementation-defined */
|
(since C23) | |
Expands to
preprocessor constant expressions
that evaluate to either
0
,
1
, or
2
which indicate the lock-free property of the corresponding
atomic types
(both signed and unsigned).
Value | Explanation |
0
|
The atomic type is never lock-free |
1
|
The atomic type is sometimes lock-free |
2
|
The atomic type is always lock-free |
References
- C17 standard (ISO/IEC 9899:2018):
-
- 7.17.1/3 atomic lock-free macros (p: 200)
- C11 standard (ISO/IEC 9899:2011):
-
- 7.17.1/3 atomic lock-free macros (p: 273)