Microsoft DirectX 8.0

待機デバッグ関数

Microsoft® DirectShow® はいくつかの無限に待機するデバッグ関数を提供する。

宣言 : Wxdebug.h

リテール ビルドでは、DbgWaitForMultipleObjects 関数と DbgWaitForSingleObject 関数はタイムアウト間隔が無限で、Microsoft® Win32® のカウンター パート WaitForMultipleObjectsWaitForSingleObject と同じように動作する。

デバッグ ビルドでは、これらの関数はグローバルなタイムアウト値を使う。タイムアウトが時間切れになると、この関数はアサートを起動する。次のレジストリ キーがミリ秒でタイムアウト値を指定する :

\HKEY_LOCAL_MACHINE\SOFTWARE\Debug\<Module Name>\TIMEOUT

このキーがない場合、タイムアウト値はデフォルトの INFINITE となる。DbgSetWaitTimeout 関数を使ってレジストリの値をオーバーライドすることができる。

関数説明
DbgSetWaitTimeout デバッグ タイムアウト値を設定する。
DbgWaitForMultipleObjects 指定された任意の(あるいはすべての)オブジェクトが通知済になるまで待つ。
DbgWaitForSingleObject あるオブジェクトが通知済になるまで待つ。

DbgSetWaitTimeout

待機デバッグ関数

デバッグ タイムアウト値を設定する。 リテール ビルドでは無視される。

構文

void DbgSetWaitTimeout(
    DWORD dwTimeout
);

パラメータ

dwTimeout
ミリ秒単位のタイムアウト値、あるいは無限に待つ INFINITE 。

注意

デバッグ ビルドでは、DbgWaitForMultipleObjects 関数と DbgWaitForSingleObject 関数はこの値をタイムアウト間隔として使用する。

DbgWaitForMultipleObjects

待機デバッグ関数

指定された任意の(あるいはすべての)オブジェクトが通知済になるまで待つ。

デバッグ ビルドでは、オブジェクトが通知済になる前にタイムアウト間隔が時間切れになると、この関数はアサートを起動する。タイムアウト間隔を設定するには、DbgSetWaitTimeout 関数を呼び出すこと。

リテール ビルドでは、この関数は INFINITE のタイムアウト間隔で WaitForMultipleObjects 関数と同じである。

構文

DWORD DbgWaitForMultipleObjects(
    DWORD nCount,
    CONST HANDLE *lpHandles,
    BOOL bWaitAll
);

パラメータ

nCount
オブジェクトの数。
lpHandles
オブジェクトのハンドルの配列、nCount サイズ
bWaitAll
すべてのオブジェクトを待つかどうかを指定するブール値。TRUE なら、この関数はすべてのオブジェクトが通知済になるまで待つ。それ以外なら、少なくとも 1 つのオブジェクト通知済になるまで待つ。

DbgWaitForSingleObject

待機デバッグ関数

あるオブジェクトが通知済になるまで待つ。

デバッグ ビルドでは、オブジェクトが通知済になる前にタイムアウト間隔が時間切れになると、この関数はアサートを起動する。タイムアウト間隔を設定するには、DbgSetWaitTimeout 関数を呼び出すこと。

リテール ビルドでは、この関数は INFINITE のタイムアウト間隔で WaitForMSingleObject 関数と同じである。

構文

DWORD DbgWaitForSingleObject(
    HANDLE h
);

パラメータ

h
オブジェクトのハンドル。