SetThreadIdealProcessorEx 函式 (processthreadsapi.h)
設定指定線程的理想處理器,並選擇性地擷取先前的理想處理器。
語法
BOOL SetThreadIdealProcessorEx(
[in] HANDLE hThread,
[in] PPROCESSOR_NUMBER lpIdealProcessor,
[out, optional] PPROCESSOR_NUMBER lpPreviousIdealProcessor
);
參數
[in] hThread
要設定理想處理器之線程的句柄。 此句柄必須使用THREAD_SET_INFORMATION訪問許可權來建立。 如需詳細資訊,請參閱 線程安全性和訪問許可權。
[in] lpIdealProcessor
PROCESSOR_NUMBER 結構的指標,指定所需理想處理器的處理器編號。
[out, optional] lpPreviousIdealProcessor
要接收先前理想處理器 之PROCESSOR_NUMBER 結構的指標。 此參數可以指向與 lpIdealProcessor 參數相同的記憶體位置。 如果不需要先前的理想處理器,這個參數可以是 NULL。
傳回值
如果函式成功,則會傳回非零值。
如果函式失敗,則會傳回零。 若要取得擴充的錯誤資訊,請使用 GetLastError。
備註
指定線程理想處理器可為排程器提供線程慣用處理器的提示。 排程器會盡可能在線程的理想處理器上執行線程。
從 Windows 11 和 Windows Server 2022 開始,在有超過 64 個處理器的系統上,進程和線程親和性會跨系統中的所有處理器,依預設跨所有處理器群組。 在設定慣用處理器時 ,SetThreadIdealProcessorEx 也會將線程的主要群組設定為慣用處理器的群組。
若要編譯使用此函式的應用程式,請設定_WIN32_WINNT >= 0x0601。 如需詳細資訊,請參閱 使用 Windows 標頭。
Windows Phone 8.1:Windows Phone 8.1 和更新版本上的 Windows Phone Store 應用程式支援此函式。
Windows 8.1 和 Windows Server 2012 R2:Windows 8.1、Windows Server 2012 R2 及更新版本上的 Windows 市集應用程式支援此函式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | processthreadsapi.h (包含 Windows.h) |
程式庫 | Kernel32.lib;Windows Phone 8.1 上的 WindowsPhoneCore.lib |
Dll | Kernel32.dll;Windows Phone 8.1 上的 KernelBase.dll |