Semaphore クラス
限られた数のユーザーをサポートできる共有リソースを制御する同期オブジェクトを表します。
構文
class Semaphore : public HandleT<HandleTraits::SemaphoreTraits>;
メンバー
パブリック typedef
名前 | 説明 |
---|---|
SyncLock |
同期ロックをサポートするクラスの同意語。 |
パブリック コンストラクター
名前 | 説明 |
---|---|
Semaphore::Semaphore | Semaphore クラスの新しいインスタンスを初期化します。 |
パブリック メソッド
名前 | 説明 |
---|---|
Semaphore::Lock | 現在のオブジェクト、または指定したハンドルに関連付けられている オブジェクトがシグナル状態になるか、指定したタイムアウト間隔が経過するまで待機します。 |
パブリック演算子
名前 | 説明 |
---|---|
Semaphore::operator= | 指定したハンドルを Semaphore オブジェクトから現在の Semaphore オブジェクトに移動します。 |
継承階層
Semaphore
要件
ヘッダー: corewrappers.h
名前空間: Microsoft::WRL::Wrappers
Semaphore::Lock
現在のオブジェクト、または指定したハンドルに関連付けられている Semaphore
オブジェクトがシグナル状態になるか、指定したタイムアウト間隔が経過するまで待機します。
SyncLock Lock(
DWORD milliseconds = INFINITE
);
static SyncLock Lock(
HANDLE h,
DWORD milliseconds = INFINITE
);
パラメーター
milliseconds
タイムアウト間隔 (ミリ秒単位)。 既定値は INFINITE で、無制限に待機します。
時
Semaphore
オブジェクトへのハンドル。
戻り値
Details::SyncLockWithStatusT<HandleTraits::SemaphoreTraits>
Semaphore::operator=
指定したハンドルを Semaphore
オブジェクトから現在の Semaphore
オブジェクトに移動します。
Semaphore& operator=(
_Inout_ Semaphore&& h
);
パラメーター
時
Semaphore
オブジェクトへの右辺値参照。
戻り値
現在の Semaphore
オブジェクトへの参照。
Semaphore::Semaphore
Semaphore
クラスの新しいインスタンスを初期化します。
explicit Semaphore(
HANDLE h
);
WRL_NOTHROW Semaphore(
_Inout_ Semaphore&& h
);
パラメーター
時
Semaphore
オブジェクトへのハンドルまたは右辺値参照。