std::experimental::atomic_weak_ptr<T>::exchange
Von 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; |
||
Ersetzt atomar den zugrundeliegenden weak_ptr durch desired. Die Operation ist eine Lese-Modifizierungs-Schreib-Operation. Der Speicher wird entsprechend dem Wert von order beeinflusst.
Inhalt |
[bearbeiten] Parameter
| desired | - | zuweisender Wert |
| Reihenfolge | - | Speicherreihenfolgebeschränkungen, die durchgesetzt werden sollen |
[bearbeiten] Rückgabewert
Der Wert der atomaren Variablen vor dem Aufruf.
[bearbeiten] Anmerkungen
Alle Änderungen am atomic_weak_ptr-Objekt selbst und alle zugehörigen Inkremente von use_count werden garantiert atomar durchgeführt. Zugehörige Dekremente von use_count erfolgen nach der atomaren Operation, müssen aber nicht Teil davon sein. Jegliche zugehörige Zerstörungs- oder Freigabeoperationen erfolgen nach der atomaren Operation und sind nicht Teil davon.
[bearbeiten] Siehe auch
spezialisiert atomare Operationen für std::shared_ptr(Funktionsschablone) |