std::atomic_ref<T>:: exchange
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
value_type exchange
(
value_type desired,
std::
memory_order
order
=
|
(constexpr desde C++26) | |
Reemplaza atómicamente el valor del objeto referenciado con desired . La operación es una operación de lectura-modificación-escritura. La memoria se ve afectada según el valor de order .
Esta sobrecarga participa en la resolución de sobrecarga solo si std:: is_const_v < T > es false .
Parámetros
| deseado | - | valor a asignar |
| orden | - | restricciones de orden de memoria a aplicar |
Valor de retorno
El valor del objeto referenciado antes de la llamada.
Informes de defectos
Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares publicados anteriormente de C++.
| DR | Aplicado a | Comportamiento publicado | Comportamiento correcto |
|---|---|---|---|
|
LWG 3508
( P3323R1 ) |
C++20 |
exchange
no tenía sentido para
const
T
|
restringido para aceptar solo
T
no constante
|