Win32 API 日本語リファレンス
ホーム › System.Diagnostics.Debug › PWAITCHAINCALLBACK

PWAITCHAINCALLBACK

コールバック

シグネチャ

void PWAITCHAINCALLBACK(
    void* WctHandle,
    UINT_PTR Context,
    DWORD CallbackStatus,
    DWORD* NodeCount,
    WAITCHAIN_NODE_INFO* NodeInfoArray,
    BOOL* IsCycle
);

パラメーター

フィールド型説明
WctHandlevoid*OpenThreadWaitChainSession 関数によって作成された WCT セッションのハンドルです。
ContextUINT_PTRGetThreadWaitChain 関数で指定された、アプリケーション定義のコンテキスト構造体への省略可能なポインターです。
CallbackStatusDWORD

コールバックの状態です。このパラメーターには、次の値のいずれか、またはその他の システム エラー コード のいずれかを指定できます。

値 意味
ERROR_ACCESS_DENIED
呼び出し元に、対象のスレッドを開くための十分な特権がありませんでした。
ERROR_CANCELLED
CloseThreadWaitChainSession 関数の呼び出しによって、非同期セッションが取り消されました。
ERROR_MORE_DATA
NodeInfoArray バッファーが、待機チェーン内のすべてのノードを格納できる大きさではありません。NodeCount パラメーターには、チェーン内のノード数が格納されます。返された待機チェーンは引き続き有効です。
ERROR_OBJECT_NOT_FOUND
指定されたスレッドが見つかりませんでした。
ERROR_SUCCESS
操作は正常に完了しました。
ERROR_TOO_MANY_THREADS
ノードの数が WCT_MAX_NODE_COUNT を超えています。返された待機チェーンは引き続き有効です。
NodeCountDWORD*取得されたノードの数です(最大で WCT_MAX_NODE_COUNT)。配列に待機チェーンのすべてのノードを格納できない場合、関数は失敗し、CallbackStatus は ERROR_MORE_DATA になり、このパラメーターにはすべてのノードを格納するために必要な配列要素数が格納されます。
NodeInfoArrayWAITCHAIN_NODE_INFO*待機チェーンを受け取る WAITCHAIN_NODE_INFO 構造体の配列です。
IsCycleBOOL*関数がデッドロックを検出した場合、この変数は TRUE に設定されます。それ以外の場合は FALSE に設定されます。

公式ドキュメント

待機チェーンを受け取る、アプリケーション定義のコールバック関数です。 OpenThreadWaitChainSession 関数を呼び出すときに、このアドレスを指定します。

PWAITCHAINCALLBACK 型は、このコールバック関数へのポインターを定義します。 WaitChainCallback は、アプリケーション定義の関数名を表すプレースホルダーです。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)