std::atomic_store, std::atomic_store_explicit
Min standard notice:
Header: <atomic>
1,2) Atomically replaces the value pointed to by obj with the value of desired as if by obj->store(desired).
# Declarations
template< class T >
void atomic_store( std::atomic<T>* obj,
typename std::atomic<T>::value_type desired ) noexcept;
(since C++11)
template< class T >
void atomic_store( volatile std::atomic<T>* obj,
typename std::atomic<T>::value_type desired ) noexcept;
(since C++11)
template< class T >
void atomic_store_explicit( std::atomic<T>* obj,
typename std::atomic<T>::value_type desired,
std::memory_order order) noexcept;
(since C++11)
template< class T >
void atomic_store_explicit( volatile std::atomic<T>* obj,
typename std::atomic<T>::value_type desired,
std::memory_order order) noexcept;
(since C++11)
# Parameters
obj: pointer to the atomic object to modifydesired: the value to store in the atomic objectorder: the memory synchronization ordering
# Return value
(none)
# Defect reports
| DR | Applied to | Behavior as published | Correct behavior |
|---|---|---|---|
| P0558R1 | C++11 | exact type match was required becauseT was deduced from multiple arguments | T is only deducedfrom obj |