std::atomic_ref<T>::store
void store( value_type desired,
std::memory_order order =
std::memory_order_seq_cst ) const noexcept;
| (constexpr с C++26) |
Атомарно заменяет текущее значение объекта, на который ссылаются, на desired. На память влияет значение order.
Эта перегрузка участвует в разрешении перегрузки только если std::is_const_v<T> — это false.
Если order не является std::memory_order_relaxed, std::memory_order_release или std::memory_order_seq_cst, поведение не определено.
Параметры
| desired | - | значение, которое нужно записать в объект, на который ссылаются |
| order | - | ограничения на порядок операций с памятью |
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были применены задним числом к ранее опубликованным стандартам C++.
| DR | Применяется к | Опубликованное поведение | Правильное поведение |
|---|---|---|---|
|
LWG 3508 (P3323R1) | C++20 |
store не имело смысла для constT | ограничено приёмом только неконстантных T |
См. также
записывает значение в объект, на который ссылается объект atomic_ref (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/atomic/atomic_ref/store