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 |