擷取 SetProcessDefaultCpuSetMasks 或 SetProcessDefaultCpuSets 所設定的進程預設集中的 CPU 集清單。
語法
BOOL GetProcessDefaultCpuSetMasks(
HANDLE Process,
PGROUP_AFFINITY CpuSetMasks,
USHORT CpuSetMaskCount,
PUSHORT RequiredMaskCount
);
參數
Process
指定要查詢之進程的進程控點。 此句柄必須具有 PROCESS_QUERY_LIMITED_INFORMATION 存取權限。 您也可以在這裡指定 GetCurrentProcess 所傳回的值。
CpuSetMasks
指定選擇性緩衝區,以擷取代表進程預設 CPU 集的 GROUP_AFFINITY 結構清單。
CpuSetMaskCount
指定 CpuSetMasks 陣列的大小,以元素為單位。
RequiredMaskCount
成功傳回時,指定寫入陣列的親緣性結構數目。 如果 CpuSetMasks 陣列太小,函式會失敗並 ERROR_INSUFFICIENT_BUFFER ,並將 RequiredMaskCount 參數設定為所需的元素數目。 必要元素數目一律小於或等於 GetMaximumProcessorGroupCount 所傳回的群組計數上限。
傳回值
如果函式成功,傳回值會為非零。
如果函式失敗,傳回值為零,而且可以呼叫 GetLastError 來擷取擴充錯誤資訊。
如果提供的陣列太小,則錯誤值會 ERROR_INSUFFICIENT_BUFFER ,且 RequiredMaskCount 會設定為所需的元素數目。
備註
如果未為指定的進程設定預設 CPU 集,則 RequiredMaskCount 參數會設定為 0,且函式會成功。
此函式類似於 GetProcessDefaultCpuSets,不同之處在於它會使用群組親和性,而不是 CPU 集標識碼來代表 CPU 集清單。 這表示進程預設 CPU 集會對映至其起始處理器,並在產生的群組親緣性清單中擷取這些處理器。
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | 窗戶11 |
| 支援的最低伺服器 | Windows 伺服器 2022 |
| Header | 程序執行緒sapi.h |
| Library | 內核32。圖書館 |
| DLL檔案 | kernel32.dll |