std::atomic_load,std::atomic_load_explicit(3)

NAME
std::atomic_load,std::atomic_load_explicit - std::atomic_load,std::atomic_load_explicit

Synopsis
   Defined in header <atomic>
   template< class T >
   T atomic_load( const std::atomic<T>* obj )
   noexcept;
   template< class T >
   T atomic_load( const volatile std::atomic<T>*
   obj ) noexcept;
   template< class T >
   T atomic_load_explicit( const std::atomic<T>* (1) (since C++11)
   obj,
   std::memory_order order ) noexcept; (2) (since C++11)
   template< class T >
   T atomic_load_explicit( const volatile
   std::atomic<T>* obj,
   std::memory_order order ) noexcept;
   1) Atomically obtains the value pointed to by obj as if by obj->load()
   2) Atomically obtains the value pointed to by obj as if by obj->load(order)

Parameters
   obj - pointer to the atomic object to modify
           the memory synchronization ordering for this operation: only
   order - std::memory_order_relaxed, std::memory_order_consume,
           std::memory_order_acquire and std::memory_order_seq_cst are permitted.

Return value
   The value that is held by the atomic object pointed to by obj

See also
   load atomically obtains the value of the atomic object
                        (public member function of std::atomic<T>)
   atomic_store atomically replaces the value of the atomic object with a
   atomic_store_explicit non-atomic argument
   (C++11) (function template)
   (C++11)
   memory_order defines memory ordering constraints for the given atomic
   (C++11) operation
                        (enum)
   std::atomic_load(std::shared_ptr) specializes atomic operations for
   std::atomic_load_explicit(std::shared_ptr) std::shared_ptr
   (deprecated in C++20) (function template)