名前空間
変種
操作

std::atomic_load, std::atomic_load_explicit

提供: cppreference.com
< cpp‎ | atomic
 
 
 
ヘッダ <atomic> で定義
(1) (C++11以上)
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;
(2) (C++11以上)
template< class T >

T atomic_load_explicit( const std::atomic<T>* obj,

                        std::memory_order order ) noexcept;
template< class T >

T atomic_load_explicit( const volatile std::atomic<T>* obj,

                        std::memory_order order ) noexcept;
1) obj->load() によって行われたかのように、 obj の指す値をアトミックに取得します。
2) obj->load(order) によって行われたかのように、 obj の指す値をアトミックに取得します。

[編集] 引数

obj - 変更するアトミックオブジェクトを指すポインタ
order - この操作に対するメモリ同期順序付け。 std::memory_order_relaxed, std::memory_order_consume, std::memory_order_acquire, std::memory_order_seq_cst のみが指定できます。

[編集] 戻り値

obj の指すアトミックオブジェクトが保持する値。

[編集] 関連項目

アトミックオブジェクトの値をアトミックに取得します
(std::atomic<T>のパブリックメンバ関数) [edit]
アトミックオブジェクトの値を非アトミック引数でアトミックに置き換えます
(関数テンプレート) [edit]
指定されたアトミック操作のメモリ順序制約を定義します
(列挙) [edit]
アトミック操作の std::shared_ptr に対する特殊化
(関数テンプレート)
atomic_load, atomic_load_explicitC言語リファレンス