Spec-Zone.ru › C++

std::atomic_ref<T>::fetch_max

Предоставляется только если T является целочисленным типом, отличным от cv bool, или типом указателя на объект
value_type fetch_max( value_type arg,
                      std::memory_order order =
                          std::memory_order_seq_cst ) const noexcept;
(начиная с C++26)

Атомарно заменяет текущее значение указанного объекта результатом std::max значения и arg. Иными словами, выполняет атомарную операцию вычисления максимума. Эта операция является операцией чтения-модификации-записи. Порядок памяти определяется значением order.

Если T является типом указателя и указатели указывают на разные полные объекты (или их подобъекты), сравнение указателей не устанавливает строгое слабое упорядочение.

Эта перегрузка участвует в разрешении перегрузки, только если std::is_const_v<T> равно false.

Параметры

arg - другой аргумент std::max
order - ограничения на порядок памяти, которые необходимо обеспечить

Возвращаемое значение

Значение, непосредственно предшествующее эффектам этой функции в порядке модификации *this.

Примечания

Макрос проверки наличия возможности Значение Стандарт Возможность
__cpp_lib_atomic_min_max 202403L (C++26) Атомарные операции вычисления минимума/максимума

Пример

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/atomic/atomic_ref/fetch_max

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API