WaitForSingleObject

指定されたカーネルオブジェクトがシグナル状態になるか、指定された時間が経過するまでスレッドをスリープさせます。

DWORD WaitForSingleObject(
    HANDLE hHandle,        // オブジェクトハンドル
    DWORD  dwMilliseconds  // タイムアウト時間
);

KERNEL32.DLL

引数

hHandle

オブジェクトのハンドルを指定します。

Windows NT/2000/XP: このハンドルは SYNCHRONIZE アクセスを持っていなければなりません。

dwMilliseconds

待ち時間をミリ秒単位で指定します。 0 を指定すると、オブジェクトがシグナル状態かどうかを調べてすぐに制御を返します。 0xFFFFFFFF (INFINITE) を指定すると、オブジェクトがシグナル状態になるまで無限に待ち続けます。

戻り値

以下の値のいずれかを返します。

意味
0x00000000 (WAIT_OBJECT_0)

オブジェクトがシグナル状態になったことを示します。

0x00000080 (WAIT_ABANDONED)

放棄されたためにミューテックスオブジェクトがシグナル状態になったことを示します。

0x00000102 (WAIT_TIMEOUT)

タイムアウト時間が経過したことを示します。

0xFFFFFFFF (WAIT_FAILED)

エラーが発生したことを示します。拡張エラー情報を取得するには、 GetLastError 関数を使います。

解説

この関数の hHandle パラメータには、以下のカーネルオブジェクトのハンドルを指定することができます。

対応情報

Windows 95 以降 / Windows NT 3.1 以降