std::experimental::atomic_weak_ptr<T>::exchange
來自 cppreference.com
< 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 的原子操作(函式模板) |