std::experimental::atomic_shared_ptr<T>:: exchange
From cppreference.net
<
cpp
|
experimental
|
atomic shared ptr
|
shared_ptr
<
T
>
exchange
(
shared_ptr
<
T
>
desired,
std::
memory_order
order
=
std::
memory_order_seq_cst
)
noexcept
;
|
||
以原子方式将底层的
shared_ptr
替换为
desired
。该操作属于读-修改-写操作。内存影响根据
order
参数值确定。
目录 |
参数
| desired | - | 要赋的值 |
| order | - | 需强制执行的内存顺序约束 |
返回值
调用前原子变量的值。
备注
对
atomic_shared_ptr
对象本身的所有更改,以及所有关联的
use_count
递增操作,均保证以原子方式执行。关联的
use_count
递减操作发生在原子操作之后,但不要求作为其组成部分。任何关联的销毁或释放操作均发生在原子操作之后,且不属其组成部分。
参见
为
std::shared_ptr
特化的原子操作
(函数模板) |