SetThreadGroupAffinity 函数 (processtopologyapi.h)

设置指定线程的处理器组相关性。

语法

BOOL SetThreadGroupAffinity(
  [in]            HANDLE               hThread,
  [in]            const GROUP_AFFINITY *GroupAffinity,
  [out, optional] PGROUP_AFFINITY      PreviousGroupAffinity
);

参数

[in] hThread

线程的句柄。

句柄必须具有THREAD_SET_INFORMATION访问权限。 有关详细信息,请参阅 线程安全和访问权限

[in] GroupAffinity

一个GROUP_AFFINITY结构,指定要用于指定线程的处理器组相关性。

[out, optional] PreviousGroupAffinity

指向 GROUP_AFFINITY 结构的指针,用于接收线程的上一个组相关性。 此参数可以为 NULL。

返回值

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

如果函数失败,则返回值为零。 若要获取扩展错误信息,请使用 GetLastError

注解

从 Windows 11 和 Windows Server 2022 开始,在处理器数超过 64 的系统上,默认情况下,进程和线程相关性跨所有处理器组跨系统中的所有处理器。 SetThreadGroupAffinity 函数限制线程与给定 GroupAffinity 指定的单个处理器组上的处理器的相关性。 此组还将成为线程的主组。

若要编译使用此函数的应用程序,请将 _WIN32_WINNT >= 0x0601。 有关详细信息,请参阅 使用 Windows 标头

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 processtopologyapi.h
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

GROUP_AFFINITY