ATOMIC_LLONG_LOCK_FREE宏
概要:
#include <stdatomic.h> #define ATOMIC_LLONG_LOCK_FREE value //value值由实现定义。
描述:
该宏扩展为适合#if预处理指令的常量表达式,并表示long long原子类型的无锁属性。该宏值可能为0、1或者2,不同的宏值和原子类型的无锁属性对应关系如下表所示:
| 宏值 | 描述 |
| 0 | 表示该原子类型不是无锁的。 |
| 1 | 表示该原子类型有时是无锁的。 |
| 2 | 表示该原子类型是无锁的。 |
原子类型的实现可以是有锁的(lock-based),也可以是无锁的(lock-free)。标准原子类型会优先使用无锁实现,只有硬件不支持时才会退到有锁实现。
范例:
|
|
输出:
The atomic type is lock-free.
相关内容:
| ATOMIC_CHAR_LOCK_FREE | 表示char原子类型无锁属性的宏。 |
| ATOMIC_CHAR8_T_LOCK_FREE | 表示char8_t原子类型无锁属性的宏。 |
| ATOMIC_CHAR16_T_LOCK_FREE | 表示char16_t原子类型无锁属性的宏。 |
| ATOMIC_CHAR32_T_LOCK_FREE | 表示char32_t原子类型无锁属性的宏。 |
| ATOMIC_WCHAR_T_LOCK_FREE | 表示wchar_t原子类型无锁属性的宏。 |
| ATOMIC_SHORT_LOCK_FREE | 表示short原子类型无锁属性的宏。 |
| ATOMIC_INT_LOCK_FREE | 表示int原子类型无锁属性的宏。 |
| ATOMIC_LONG_LOCK_FREE | 表示long原子类型无锁属性的宏。 |
| ATOMIC_BOOL_LOCK_FREE | 表示bool原子类型无锁属性的宏。 |
| ATOMIC_POINTER_LOCK_FREE | 表示指针原子类型无锁属性的宏。 |
主要参考资料: