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

要接收指定信息的緩衝區指標。 此緩衝區的必要大小取決於指定的資訊類別。

如果資訊類別是 UmsThreadContextUmsThreadTeb,緩衝區必須是 sizeof(PVOID)

如果資訊類別是 UmsThreadIsSuspendedUmsThreadIsTerminated,緩衝區必須是 sizeof(BOOLEAN)

[in] UmsThreadInformationLength

UmsThreadInformation 緩衝區的大小,以位元組為單位。

[out, optional] ReturnLength

ULONG 變數的指標。 在輸出時,此參數會接收寫入 UmsThreadInformation 緩衝區的位元組數目。

傳回值

如果函式成功,則會傳回非零值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。 可能的錯誤值包括下列專案。

傳回碼 Description
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)
程式庫 Kernel32.lib
DLL Kernel32.dll
API 集合 api-ms-win-core-ums-l1-1-0 (在 Windows 7)

另請參閱

SetUmsThreadInformation

UMS_THREAD_INFO_CLASS