Atomic operations library
来自cppreference.com
< c
该页由英文版wiki使用Google Translate机器翻译而来。
该翻译可能存在错误或用词不当。鼠标停留在文本上可以看到原版本。你可以帮助我们修正错误或改进翻译。参见说明请点击这里. |
,如果宏常数
__STDC_NO_ATOMICS__
(C11)定义由编译器,头<stdatomic.h>
,在关键字的_Atomic,和此处列出的所有的名字都没有提供原文:
If the macro constant
__STDC_NO_ATOMICS__
(C11) is defined by the compiler, the header <stdatomic.h>
, the keyword _Atomic, and all of the names listed here are not provided.目录 |
[编辑] 类型
在头文件
<stdatomic.h> 中定义 | |
(C11) |
定义内存排序约束 原文: defines memory ordering constraints (枚举) |
(C11) |
lock-free atomic boolean flag (struct) |
[编辑] 宏
在头文件
<stdatomic.h> 中定义 | |
表明,在给定的原子类型是无锁的 原文: indicates that the given atomic type is lock-free (常量宏) | |
(C11) |
初始化一个新的atomic_flag (常量宏) |
(C11) |
初始化一个新的原子对象 (函数宏) |
(C11) |
打破了依赖链memory_order_consume 原文: breaks a dependency chain for memory_order_consume (函数宏) |
[编辑] 功能
在头文件
<stdatomic.h> 中定义 | |
的atomic_flag设置为true,并返回旧的值 原文: sets an atomic_flag to true and returns the old value (函数) | |
设置为false atomic_flag (函数) | |
(C11) |
initializes an existing atomic object (函数) |
(C11) |
表示是否的原子对象是无锁的 原文: indicates whether the atomic object is lock-free (函数) |
存储一个值,该值在一个原子对象 (函数) | |
读取一个值,该值从一个原子对象 原文: reads a value from an atomic object (函数) | |
交换值与原子的对象的值 原文: swaps a value with the value of an atomic object (函数) | |
交换价值的一个原子对象,如果旧值的期望是什么,否则读旧的值 原文: swaps a value with the an atomic object if the old value is what is expected, otherwise reads the old value (函数) | |
原子加成 (函数) | |
原子减法 (函数) | |
原子逻辑OR (函数) | |
原子的逻辑“异或” (函数) | |
原子逻辑 (函数) | |
(C11) |
通用内存的顺序独立的栅栏同步原语 原文: generic memory order-dependent fence synchronization primitive (函数) |
(C11) |
围栏之间的线程和信号处理器,在同一个线程中执行 原文: fence between a thread and a signal handler executed in the same thread (函数) |
[编辑] 类型
本章尚未完成 原因:description |
自定义类型的名称
|
Full type name |
atomic_bool
|
_Atomic _Bool |
atomic_char
|
_Atomic char |
atomic_schar
|
_Atomic signed char |
atomic_uchar
|
_Atomic unsigned char |
atomic_short
|
_Atomic short |
atomic_ushort
|
_Atomic unsigned short |
atomic_int
|
_Atomic int |
atomic_uint
|
_Atomic unsigned int |
atomic_long
|
_Atomic long |
atomic_ulong
|
_Atomic unsigned long |
atomic_llong
|
_Atomic long long |
atomic_ullong
|
_Atomic unsigned long long |
atomic_char16_t
|
_Atomic char16_t |
atomic_char32_t
|
_Atomic char32_t |
atomic_wchar_t
|
_Atomic wchar_t |
atomic_int_least8_t
|
_Atomic int_least8_t |
atomic_uint_least8_t
|
_Atomic uint_least8_t |
atomic_int_least16_t
|
_Atomic int_least16_t |
atomic_uint_least16_t
|
_Atomic uint_least16_t |
atomic_int_least32_t
|
_Atomic int_least32_t |
atomic_uint_least32_t
|
_Atomic uint_least32_t |
atomic_int_least64_t
|
_Atomic int_least64_t |
atomic_uint_least64_t
|
_Atomic uint_least64_t |
atomic_int_fast8_t
|
_Atomic int_fast8_t |
atomic_uint_fast8_t
|
_Atomic uint_fast8_t |
atomic_int_fast16_t
|
_Atomic int_fast16_t |
atomic_uint_fast16_t
|
_Atomic uint_fast16_t |
atomic_int_fast32_t
|
_Atomic int_fast32_t |
atomic_uint_fast32_t
|
_Atomic uint_fast32_t |
atomic_int_fast64_t
|
_Atomic int_fast64_t |
atomic_uint_fast64_t
|
_Atomic uint_fast64_t |
atomic_intptr_t
|
_Atomic intptr_t |
atomic_uintptr_t
|
_Atomic uintptr_t |
atomic_size_t
|
_Atomic size_t |
atomic_ptrdiff_t
|
_Atomic ptrdiff_t |
atomic_intmax_t
|
_Atomic intmax_t |
atomic_uintmax_t
|
_Atomic uintmax_t |