nlib
|
CriticalSection
等をラップするためのクラスです。
[詳解]
#include "nn/nlib/threading/CriticalSection.h"
公開型 | |
typedef T | mutex_type |
T | |
typedef mutex_type::native_handle_type | native_handle_type |
mutex_type::native_handle_type | |
公開メンバ関数 | |
void | lock () NLIB_ACQUIRE() |
関連付けられたCriticalSection 等をロックします。 | |
void | unlock () noexcept NLIB_RELEASE() |
関連付けられたCriticalSection 等をアンロックします。 | |
NLIB_CHECK_RESULT bool | try_lock () noexcept NLIB_TRY_ACQUIRE(true) |
関連付けられたCriticalSection 等のロックを試みます。 | |
NLIB_CHECK_RESULT bool | try_lock_for (const TimeSpan &timeout) noexcept NLIB_TRY_ACQUIRE(true) |
関連付けられたCriticalSection 等のタイムアウト付きロックを試みます。 | |
NLIB_CHECK_RESULT bool | try_lock_until (const DateTime &abstime) noexcept NLIB_TRY_ACQUIRE(true) |
関連付けられたCriticalSection 等のタイムアウト付きロックを試みます。 | |
void | swap (UniqueLock &rhs) noexcept |
関連付けられているCriticalSection 等のオブジェクトをスワップします。 [詳解] | |
mutex_type * | release () noexcept NLIB_RETURN_CAPABILITY(*locker_) |
関連付けを解除します。アンロックはされません。 [詳解] | |
mutex_type * | mutex () const noexcept NLIB_RETURN_CAPABILITY(*locker_) |
関連付けられているCriticalSection 等のオブジェクトへのポインタを取得します。 [詳解] | |
native_handle_type | native_handle () NLIB_RETURN_CAPABILITY(*locker_) |
ロックを表す実装固有のハンドルを返します。 | |
bool | owns_lock () const noexcept |
UniqueLockに関連付けられたロックがロックされていればtrue を返します。 | |
operator bool () const | |
ロックを保持していればtrue を返します。 | |
基本的なメンバ関数 | |
UniqueLock () noexcept | |
関連付けなしにオブジェクトを初期化します。 | |
UniqueLock (mutex_type &rhs) NLIB_ACQUIRE(locker_) | |
CriticalSection 等をロックして、このオブジェクトに関連付けます。 [詳解] | |
UniqueLock (mutex_type &rhs, AdoptLockType) NLIB_REQUIRES(locker_) | |
CriticalSection 等が既にロックされていると仮定して、ロックせずにオブジェクトを初期化します。 デストラクタではアンロックされます。 [詳解] | |
UniqueLock (mutex_type &rhs, DeferLockType) noexcept NLIB_EXCLUDES(locker_) | |
ロックせずにオブジェクトを初期化します。 [詳解] | |
UniqueLock (mutex_type &rhs, TryToLockType) | |
初期化の際にtry_lock() でロックを試みます。 [詳解] | |
UniqueLock & | assign (UniqueLock &rhs, move_tag) |
swap を利用したムーブにより代入します。 | |
UniqueLock (UniqueLock &rhs, move_tag) | |
swap を利用したムーブによりオブジェクトを構築します。 | |
UniqueLock (UniqueLock &&rhs) | |
ムーブコンストラクタです。C++11の利用時に有効です。 | |
UniqueLock & | operator= (UniqueLock &&rhs) |
ムーブ代入演算子です。C++11の利用時に有効です。 | |
CriticalSection
等をラップするためのクラスです。
T | CriticalSection 等のクラス |
CriticalSection.h の 308 行目に定義があります。
|
inlineexplicit |
CriticalSection
等をロックして、このオブジェクトに関連付けます。
[in] | rhs | CriticalSection 等のオブジェクト |
CriticalSection.h の 313 行目に定義があります。
|
inline |
CriticalSection
等が既にロックされていると仮定して、ロックせずにオブジェクトを初期化します。 デストラクタではアンロックされます。
[in] | rhs | CriticalSection 等のオブジェクト |
CriticalSection.h の 317 行目に定義があります。
|
inlinenoexcept |
|
inline |
|
inlinenoexcept |
関連付けられているCriticalSection
等のオブジェクトへのポインタを取得します。
CriticalSection
等のオブジェクトへのポインタ CriticalSection.h の 383 行目に定義があります。
|
inlinenoexcept |
関連付けを解除します。アンロックはされません。
CriticalSection
等のオブジェクトへのポインタ CriticalSection.h の 377 行目に定義があります。
|
inlinenoexcept |
関連付けられているCriticalSection
等のオブジェクトをスワップします。
[in] | rhs | スワップするオブジェクト |
CriticalSection.h の 372 行目に定義があります。
© 2012-2017 Nintendo Co., Ltd. All rights reserved.