c# ProcessPriorityClass进程优先级

ProcessPriorityClass等级说明

public enum ProcessPriorityClass

字段
AboveNormal 32768
指定进程的优先级高于 Normal 但低于 High。

BelowNormal 16384
指定进程的优先级在 Idle 之上,但在 Normal 之下。

High 128
指定进程执行必须立即执行的时间关键任务,如 Task List 对话框,不管操作系统的负荷如何,用户调用该对话框后均必须迅速响应。 该进程的线程优先于普通或空闲优先级类进程的线程。
为进程的优先级类指定 High 这一个优先级时需谨慎,因为高优先级类应用程序几乎可以使用所有可用的处理器时间。

Idle 64
指定此进程的线程只能在系统空闲时运行,如屏幕保护程序。 更高优先级类中运行的任何进程的线程都优先于此进程的线程。 此优先级类由子进程继承。

Normal 32
指定进程没有特殊的安排需求。

RealTime 256
指定进程拥有可能的最高优先级。
具有 RealTime 优先级的进程的线程抢占所有其他进程的线程,包括执行重要任务的操作系统进程。 因此,执行时间并不太短的 RealTime 优先级进程可能导致磁盘高速缓存不刷新或鼠标无响应。

设置优先级:

//设置当前程序的进程优先级
var prop = System.Diagnostics.Process.GetCurrentProcess();
prop.PriorityClass = System.Diagnostics.ProcessPriorityClass.RealTime;