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


ProcessPriorityClass Перечисление

Определение

Указывает приоритет, который система связывает с процессом. Это значение вместе со значением приоритета каждого потока процесса определяет базовый уровень приоритета каждого потока.

public enum class ProcessPriorityClass
public enum ProcessPriorityClass
type ProcessPriorityClass = 
Public Enum ProcessPriorityClass
Наследование
ProcessPriorityClass

Поля

AboveNormal 32768

Указывает, что приоритет процесса выше Normal и ниже High.

BelowNormal 16384

Указывает, что значение приоритета процесса находится между Idle и Normal.

High 128

Указывает, что процесс выполняет срочные задачи, которые должны быть выполнены немедленно, например диалоговое окно Task List, которое должно быстро отвечать при вызове пользователя независимо от загрузки операционной системы. Потоки процесса выгружают потоки процессов с нормальными или низкими приоритетами.
Указывайте для класса приоритета процесса значение High только в исключительных случаях, так как приложение с классом высокого приоритета может использовать почти все доступные ресурсы процессора.

Idle 64

Указывает, что потоки этого процесса выполняются, только когда система не занята. Примером может служить программа-заставка. Потоки данного процесса выгружаются потоками любых процессов с более высоким приоритетом. Этот класс приоритета наследуется дочерними процессами.

Normal 32

Указывает, что у процесса нет особых запланированных потребностей.

RealTime 256

Указывает, что процесс обладает максимально высоким приоритетом.
Потоки процесса с приоритетом RealTime прерывают потоки всех других процессов, в том числе процессов операционной системы, выполняющих важные задачи. То есть процесс с приоритетом RealTime, который выполняется достаточно продолжительное время, может стать причиной того, что кэши дисков не будут очищаться или перестанет реагировать мышь.

Комментарии

Класс приоритета процесса охватывает диапазон уровней приоритета потока. Потоки с разными приоритетами, выполняющихся в процессе, выполняются относительно класса приоритета процесса. Операционная система использует базовый уровень приоритета всех исполняемых потоков, чтобы определить, какой поток получает следующий срез процессорного времени.

Win32 использует четыре класса приоритета с семью базовыми уровнями приоритета на каждый класс. В зависимости от затраченного времени или других повышений операционная система может изменить базовый уровень приоритета, когда процесс необходимо опередить других для доступа к процессору. Кроме того, можно задать PriorityBoostEnabled временное повышение уровня приоритета потоков, которые были выведены из состояния ожидания. Приоритет сбрасывается, когда процесс возвращается в состояние ожидания.

Применяется к

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