SetProcessDefaultCpuSetMasks 函数 (processthreadsapi.h)

为指定进程中的线程设置默认的 CPU 集分配。

语法

BOOL SetProcessDefaultCpuSetMasks(
  HANDLE          Process,
  PGROUP_AFFINITY CpuSetMasks,
  USHORT          CpuSetMaskCount
);

参数

Process

指定要为其设置默认 CPU 集的进程。 此句柄必须具有 PROCESS_SET_LIMITED_INFORMATION 访问权限。 还可以在此处指定 GetCurrentProcess 返回的值。

CpuSetMasks

指定 GROUP_AFFINITY 结构的可选缓冲区,这些结构表示要设置为进程默认 CPU 集的 CPU 集。 如果为 NULL, 则 SetProcessDefaultCpuSetMasks 函数将清除所有分配。

CpuSetMaskCount

以 元素为单位指定 CpuSetMasks 数组的大小。 如果缓冲区为 NULL,则此值必须为零。

返回值

传递有效参数时,此函数不能失败。

注解

属于此进程的线程不会使用 SetThreadSelectedCpuSetMasksSetThreadSelectedCpuSets 显式设置 CPU 集,将自动继承 SetProcessDefaultCpuSetMasks 指定的集。

此函数类似于 SetProcessDefaultCpuSets,只不过它使用组相关性而不是 CPU 集 ID 来表示 CPU 集的列表。 这意味着,生成的进程默认 CPU 集分配是所提供的组关联列表中具有主处理器的所有 CPU 集的集合。

要求

要求
最低受支持的客户端 Windows 11
最低受支持的服务器 Windows Server 2022
标头 processthreadsapi.h
DLL Kernel32.dll