std::atomic_ref<T>:: store
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
void
store
(
value_type desired,
std::
memory_order
order
=
|
(constexpr seit C++26) | |
Ersetzt atomar den aktuellen Wert des referenzierten Objekts mit desired . Der Speicher wird gemäß dem Wert von order beeinflusst.
Diese Überladung nimmt nur dann an der Überladungsauflösung teil, wenn std:: is_const_v < T > false ist.
Wenn order nicht std:: memory_order_relaxed , std:: memory_order_release oder std:: memory_order_seq_cst ist, ist das Verhalten undefiniert.
Parameter
| desired | - | der Wert, der im referenzierten Objekt gespeichert werden soll |
| order | - | Speicherreihenfolge-Beschränkungen, die durchgesetzt werden sollen |
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrektes Verhalten |
|---|---|---|---|
|
LWG 3508
( P3323R1 ) |
C++20 |
store
war bedeutungslos für
const
T
|
eingeschränkt, um nur non-const
T
zu akzeptieren
|
Siehe auch
speichert einen Wert in das von einem
atomic_ref
Objekt referenzierte Objekt
(öffentliche Elementfunktion) |