QueryUmsThreadInformation 関数 (winbase.h)

指定されたユーザー モード スケジューリング (UMS) ワーカー スレッドに関する情報を取得します。

警告

Windows 11時点では、ユーザー モードのスケジュール設定はサポートされていません。 すべての呼び出しがエラー ERROR_NOT_SUPPORTEDで失敗します。

構文

BOOL QueryUmsThreadInformation(
  [in]            PUMS_CONTEXT          UmsThread,
  [in]            UMS_THREAD_INFO_CLASS UmsThreadInfoClass,
  [out]           PVOID                 UmsThreadInformation,
  [in]            ULONG                 UmsThreadInformationLength,
  [out, optional] PULONG                ReturnLength
);

パラメーター

[in] UmsThread

UMS スレッド コンテキストへのポインター。

[in] UmsThreadInfoClass

取得する情報の種類を指定するUMS_THREAD_INFO_CLASS値。

[out] UmsThreadInformation

指定した情報を受け取るバッファーへのポインター。 このバッファーの必要なサイズは、指定された情報クラスによって異なります。

情報クラスが UmsThreadContext または UmsThreadTeb の場合、バッファーは である sizeof(PVOID)必要があります。

情報クラスが UmsThreadIsSuspended または UmsThreadIsTerminated の場合、バッファーは である sizeof(BOOLEAN)必要があります。

[in] UmsThreadInformationLength

UmsThreadInformation バッファーのサイズ (バイト単位)。

[out, optional] ReturnLength

ULONG 変数へのポインター。 出力時に、このパラメーターは UmsThreadInformation バッファーに書き込まれたバイト数を受け取ります。

戻り値

関数が成功すると、0 以外の値が返されます。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。 考えられるエラー値は次のとおりです。

リターン コード 説明
ERROR_INFO_LENGTH_MISMATCH
要求された情報に対してバッファーが小さすぎます。
ERROR_INVALID_INFO_CLASS
指定された情報クラスはサポートされていません。
ERROR_NOT_SUPPORTED
UMS はサポートされていません。

注釈

QueryUmsThreadInformation 関数は、指定された UMS ワーカー スレッドに関する情報 (アプリケーション定義コンテキスト、スレッド実行ブロック (TEB)、スレッドが中断または終了されたかどうかなど) を取得します。

UMS ワーカー スレッドの基になる構造は、システムによって管理されます。 QueryUmsThreadInformation によって公開されない情報は、予約済みと見なす必要があります。

要件

要件
サポートされている最小のクライアント Windows 7 (64 ビットのみ) [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winbase.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll
API セット api-ms-win-core-ums-l1-1-0 (Windows 7 で導入)

こちらもご覧ください

SetUmsThreadInformation

UMS_THREAD_INFO_CLASS