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.1Windows 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

另請參閱

GetThreadIdealProcessorEx

SetThreadIdealProcessor