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 缓冲区的字节数。
返回值
如果函数成功,则返回非零值。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。 可能的错误值包括以下内容。
返回代码 | 说明 |
---|---|
|
缓冲区太小,无法获取请求的信息。 |
|
不支持指定的信息类。 |
|
不支持 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 集 | windows 7 中引入的 api-ms-win-core-ums-l1-1-0 () |