|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
GetPriorityClass
The GetPriorityClass function returns the priority class for the specified process. This value, together with the priority value of each thread of the process, determines each thread's base priority level.
DWORD GetPriorityClass(
HANDLE hProcess // handle to the process );
Parameters
hProcess
Identifies the process. Windows NT: The handle must have PROCESS_QUERY_INFORMATION access. For more information, see Process Objects.
Return Values
If the function succeeds, the return value is the priority class of the specified process. If the function fails, the return value is zero. To get extended error information, call GetLastError. The process's priority class is one of the following values:
Priority Meaning HIGH_PRIORITY_CLASS Indicates a process that performs time-critical tasks that must be executed immediately for it to run correctly. The threads of a high-priority class process preempt the threads of normal or idle priority class processes. An example is Windows Task List, which must respond quickly when called by the user, regardless of the load on the operating system. Use extreme care when using the high-priority class, because a high-priority class CPU-bound application can use nearly all available cycles. IDLE_PRIORITY_CLASS Indicates a process whose threads run only when the system is idle and are preempted by the threads of any process running in a higher priority class. An example is a screen saver. The idle priority class is inherited by child processes. NORMAL_PRIORITY_CLASS Indicates a normal process with no special scheduling needs. REALTIME_PRIORITY_CLASS Indicates a process that has the highest possible priority. The threads of a real-time priority class process preempt the threads of all other processes, including operating system processes performing important tasks. For example, a real-time process that executes for more than a very brief interval can cause disk caches not to flush or cause the mouse to be unresponsive.
Remarks
Every thread has a base priority level determined by the thread's priority value and the priority class of its process. The operating system uses the base priority level of all executable threads to determine which thread gets the next slice of CPU time. Threads are scheduled in a round-robin fashion at each priority level, and only when there are no executable threads at a higher level will scheduling of threads at a lower level take place. For a table that shows the base priority levels for each combination of priority class and thread priority value, see the SetPriorityClass function.
See Also
GetThreadPriority, SetPriorityClass, SetThreadPriority
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
GetPriorityClass
Функция GetPriorityClass возвращает приоритетный класс для определенного процесса. Эта величина, вместе с приоритетной величиной каждой резьбы процесса, определяет каждый базовый приоритетный уровень резьбы.
DWORD GetPriorityClass(
РУЧКА РУЧКИ hProcess // в процесс );
Параметры
hProcess
Идентифицирует процесс. Окно NT: ручка должна иметь доступ PROCESS_QUERY_INFORMATION. Более подробно, видьте как Процесс Возражал.
Обратные Величины
Если функция добивается успеха, обратная величина является приоритетным классом определенного процесса. Если функция терпит неудачу, обратная величина нулевая. Для того, чтобы расширять информацию ошибки, назовите GetLastError. Приоритетный класс процесса - одно из следующего величин:
Приоритетное Значение HIGH_PRIORITY_CLASS Указывает процесс, который выполняет время-критические задачи, которые должны выполняться немедленно для этого, чтобы работать правильно. Резьба высокоприоритетного процесса класса захватывает резьбу нормальных или холостых приоритетных процессов класса. Пример является Списком Задачи Windows, который должен ответить быстро когда названо пользователем, независимо от загрузки в операционной системе. Крайняя забота Использования при использовании высокоприоритетного класса, поскольку высокоприоритетный класс связавший приложение CPU может использовать почти все доступные циклы. IDLE_PRIORITY_CLASS Указывает процесс, чья резьба работает только когда система является ожиданием и захвачена резьбой любого процесса, работающего в более высоком приоритетном классе. Пример является экранным спасателем. Холостой приоритетный класс унаследован процессами ребенка. NORMAL_PRIORITY_CLASS Указывает нормальный процесс без специального планирования, которому нужно. REALTIME_PRIORITY_CLASS Указывает процесс, который имеет самый верхний возможный приоритет. Резьба приоритетного в реальном времени процесса класса захватывает резьбу всех других процессов, включая процессы операционной системы, выполняющие важные задачи. Например, процесс в реальном времени, который выполняется для более, чем a же краткого интервала может заставить кеши не, чтобы сбрасывать или заставлять мышь, чтобы быть неотзывчивым.
Замечания
Каждая резьба определила базовому приоритетному уровню приоритетной величиной резьбы и приоритетный класс своего процесса. Операционная система использует базовый приоритетный уровень всей выполняемой резьбы, чтобы определять, что какая резьба получает следующую вырезку времени CPU. Резьба запланирована в циклическом способе на каждом приоритетном уровне, и только когда нет программы заправляется на более высоком уровне если планирование резьбы на более низком уровне произойдет. Для таблицы, которая показывает базовым приоритетным уровням для каждой комбинации приоритетного класса и приоритетной величины резьбы, смотри функцию SetPriorityClass.
Смотри Также
GetThreadPriority, SetPriorityClass, SetThreadPriority
|
|
|
|
| |