atomic_exchange, atomic_exchange_explicit

来自cppreference.com
< c‎ | atomic

定义于头文件 <stdatomic.h>
C atomic_exchange( volatile A* obj, C desired );
(1) (C11起)
C atomic_exchange_explicit( volatile A* obj, C desired, memory_order order );
(2) (C11起)

Atomically replaces the value pointed by obj with desired and returns the value obj held previously. The operation is read-modify-write operation. The first version orders memory accesses according to memory_order_seq_cst, the second version orders memory accesses according to order.

这是一个通用函数定义的所有原子的对象类型。 A是一个原子对象的类型,C非原子的类型,对应于A.
原文:
This is a 通用函数 defined for all atomic object types. A is the type of an atomic object, C is the non-atomic type corresponding to A.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 参数

obj -
指针的原子对象修改
原文:
pointer to the atomic object to modify
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
desired - the value to replace the atomic object with
order -
内存同步进行此操作的顺序:所有的允许值
原文:
the memory synchronization ordering for this operation: all values are permitted
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 返回值

保存的值是原子对象所指向的obj.
原文:
The value held previously be the atomic object pointed to by obj.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 另请参阅

交换价值的一个原子对象,如果旧值的期望是什么,否则读旧的值
原文:
swaps a value with the an atomic object if the old value is what is expected, otherwise reads the old value
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
atomic_exchangeatomic_exchange_explicitC++文档