GetNumaNodeProcessorMask 函数 (winbase.h)
检索指定节点的处理器掩码。
语法
BOOL GetNumaNodeProcessorMask(
[in] UCHAR Node,
[out] PULONGLONG ProcessorMask
);
参数
[in] Node
节点的编号。
[out] ProcessorMask
节点的处理器掩码。 处理器掩码是一个位向量,其中每个位表示一个处理器以及它是否在节点中。
如果节点未配置处理器,则处理器掩码为零。
在处理器数超过 64 的系统上,仅当节点与调用线程位于同一 处理器组中 时,此参数才会设置为节点的处理器掩码。 否则, 参数设置为零。
返回值
如果该函数成功,则返回值为非零值。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
注解
若要检索系统中编号最高的节点,请使用 GetNumaHighestNodeNumber 函数。 请注意,此数字不保证等于系统中的节点总数。
若要确保进程的所有线程在同一节点上运行,请将 SetProcessAffinityMask 函数与指定同一节点中的处理器的进程关联掩码一起使用。
使用 GetNumaNodeProcessorMaskEx 函数检索任何处理器组中节点的处理器掩码。
注意
从 TBD Release Iron 开始,此函数和其他 NUMA 函数的行为已修改,以更好地支持包含更多 64 个处理器的节点的系统。 有关此更改的详细信息(包括有关启用此 API 的旧行为的信息),请参阅 NUMA 支持。
从 TBD Release Iron 开始的行为
系统为每个节点分配一个主组。 GetNumaNodeProcessorMask 返回的掩码适用于节点的主组,仅当调用线程属于该组时才返回。
早期版本中的行为
返回指定节点的掩码。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista、Windows XP Professional x64 Edition、带 SP2 的 Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | winbase.h (包括 Windows.h) |
Library | Kernel32.lib |
DLL | Kernel32.dll |