共用方式為


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