SetUmsThreadInformation 函数 (winbase.h)

为指定的用户模式计划设置应用程序特定的上下文信息, (UMS) 工作线程。

警告

自Windows 11起,不支持用户模式计划。 所有调用都失败,出现错误 ERROR_NOT_SUPPORTED

语法

BOOL SetUmsThreadInformation(
  [in] PUMS_CONTEXT          UmsThread,
  [in] UMS_THREAD_INFO_CLASS UmsThreadInfoClass,
  [in] PVOID                 UmsThreadInformation,
  [in] ULONG                 UmsThreadInformationLength
);

parameters

[in] UmsThread

指向 UMS 线程上下文的指针。

[in] UmsThreadInfoClass

一个UMS_THREAD_INFO_CLASS值,该值指定要设置的信息类型。 此参数必须为 UmsThreadUserContext

[in] UmsThreadInformation

指向包含要设置的信息的缓冲区的指针。

[in] UmsThreadInformationLength

UmsThreadInformation 缓冲区的大小(以字节为单位)。

返回值

如果函数成功,则返回非零值。

如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。 可能的错误值包括以下内容。

返回代码 说明
ERROR_INFO_LENGTH_MISMATCH
缓冲区大小与指定信息类所需的大小不匹配。
ERROR_INVALID_INFO_CLASS
UmsThreadInfoClass 参数指定不支持的信息类。
ERROR_NOT_SUPPORTED
不支持 UMS。

备注

SetUmsThreadInformation 函数可用于为指定的 UMS 工作线程设置应用程序定义的上下文。 上下文信息可以包含应用程序可能认为可用于跟踪的任何内容,例如每个计划程序或每个辅助角色线程状态。 UMS 工作线程的基础结构由系统管理,不应直接修改。

QueryUmsThreadInformation 函数可用于检索有关指定线程的其他公开信息,例如其线程执行块 (TEB) 以及线程是挂起还是终止。 未通过 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 (

另请参阅

QueryUmsThreadInformation