Поделиться через


Функция 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 в Windows Phone 8.1 и более поздних версиях.

Windows 8.1 и Windows Server 2012 R2. Эта функция поддерживается для приложений Магазина Windows на Windows 8.1, Windows Server 2012 R2 и более поздних версиях.

Требования

Требование Значение
Минимальная версия клиента Windows 7 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header processthreadsapi.h (включая Windows.h)
Библиотека Kernel32.lib; WindowsPhoneCore.lib в Windows Phone 8.1
DLL Kernel32.dll; KernelBase.dll Windows Phone 8.1

См. также раздел

GetThreadIdealProcessorEx

SetThreadIdealProcessor