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、Windows XP with SP2 [僅限桌面應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 winbase.h (包含 Windows.h)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

GetNumaNodeProcessorMaskEx

GetNumaProcessorNode

NUMA 支援

處理序和執行緒函式

SetProcessAffinityMask