std:: atomic_fetch_max, std:: atomic_fetch_max_explicit
|
Definido en el encabezado
<atomic>
|
||
|
template
<
class
T
>
T atomic_fetch_max
(
std::
atomic
<
T
>
*
obj,
|
(1) | (desde C++26) |
|
template
<
class
T
>
T atomic_fetch_max
(
volatile
std::
atomic
<
T
>
*
obj,
|
(2) | (desde C++26) |
|
template
<
class
T
>
T atomic_fetch_max_explicit
(
std::
atomic
<
T
>
*
obj,
|
(3) | (desde C++26) |
|
template
<
class
T
>
T atomic_fetch_max_explicit
(
volatile
std::
atomic
<
T
>
*
obj,
|
(4) | (desde C++26) |
Reemplaza atómicamente el valor apuntado por obj con el resultado de std::max entre el valor antiguo de obj y arg . Devuelve el valor que obj contenía previamente. La operación se realiza como si se ejecutara lo siguiente:
Si
std::atomic<T>
no tiene un miembro
fetch_max
(este miembro solo se proporciona para tipos
integrales
y
punteros
excepto
bool
), el programa está mal formado.
Contenidos |
Parámetros
| obj | - | puntero al objeto atómico a modificar |
| arg | - | el valor para std::max con el valor almacenado en el objeto atómico |
| order | - | el orden de sincronización de memoria |
Valor de retorno
El valor inmediatamente anterior a los efectos de esta función en el orden de modificación de * obj .
Notas
| Macro de prueba de características | Valor | Estándar | Característica |
|---|---|---|---|
__cpp_lib_atomic_min_max
|
202403L
|
(C++26) | Mínimo/máximo atómico |
Ejemplo
|
Esta sección está incompleta
Razón: sin ejemplo |
Véase también
|
(C++26)
|
realiza atómicamente
std::max
entre el argumento y el valor del objeto atómico y obtiene el valor mantenido previamente
(función miembro pública de
std::atomic<T>
)
|
|
(C++26)
(C++26)
|
reemplaza el objeto atómico con el resultado de
std::min
con un argumento no atómico y obtiene el valor previo del atómico
(plantilla de función) |