std::experimental::atomic_weak_ptr<T>::exchange
来自 cppreference.cn
< cpp | experimental | atomic_weak_ptr
weak_ptr<T> exchange( weak_ptr<T> desired, std::memory_order order = std::memory_order_seq_cst ) noexcept; |
||
原子地将底层 weak_ptr
替换为 desired
。该操作是一个读-修改-写操作。内存根据 order
的值受到影响。
目录 |
[编辑] 参数
desired | - | 要赋的值 |
顺序 | - | 要强制执行的内存顺序约束 |
[编辑] 返回值
调用前原子变量的值。
[编辑] 备注
对 atomic_weak_ptr
对象本身的所有更改,以及所有相关的 use_count 增量,都保证原子地执行。相关的 use_count
减量发生在原子操作之后,但不要求作为原子操作的一部分。任何相关的销毁或解分配操作发生在原子操作之后,不作为其一部分。
[编辑] 参阅
特化 std::shared_ptr 的原子操作(函数模板) |