c# 设置进程自身在系统中运行关联的优先级

240
补充展位
Pages_Weblog_Get#7fd8ffdb-36d7-4826-9e8e-ad4f00e6dfd0
文章摘要
此内容由人工摘要内容,并由AI根据文章内容进行润色
暂无内容

在windows系统中任务管理器中有一个设置进程优先级的选项 如下图:

windows任务管理器设置进程在系统中运行关联的优先级别

这个功能平时用到的不多,需要用的时候如果手动改每次程序重启后都需要再次设置挺麻烦的 这里提供一个程序设置自身优先级的代码:

将这段代码放在程序启动方法里 每次会自动设置,就不需要再手动去设置了

//获取当前自身进程
Process p = Process.GetCurrentProcess();
//设置进程的优先级
p.PriorityClass = ProcessPriorityClass.Idle;

ProcessPriorityClass枚举类说明

枚举名 枚举值 说明
AboveNormal 32768 指定进程的优先级高于 Normal 但低于 High。
BelowNormal 16384 指定进程的优先级在 Idle 之上,但在 Normal 之下。
High 128 指定进程执行必须立即执行的时间关键任务,如 Task List 对话框,不管操作系统的负荷如何,用户调用该对话框后均必须迅速响应。 该进程的线程优先于普通或空闲优先级类进程的线程。为进程的优先级类指定 High 这一个优先级时需谨慎,因为高优先级类应用程序几乎可以使用所有可用的处理器时间。
Idle 64 指定此进程的线程只能在系统空闲时运行,如屏幕保护程序。 更高优先级类中运行的任何进程的线程都优先于此进程的线程。 此优先级类由子进程继承。
Normal 32 指定进程没有特殊的安排需求。
RealTime 256 指定进程拥有可能的最高优先级。具有 RealTime 优先级的进程的线程抢占所有其他进程的线程,包括执行重要任务的操作系统进程。 因此,执行时间并不太短的 RealTime 优先级进程可能导致磁盘高速缓存不刷新或鼠标无响应。
补充展位 Pages_Weblog_Get#0
补充展位 Pages_Weblog_Get#1
补充展位 Pages_Weblog_Get#2
专题推荐
暂无内容
补充展位 Pages_Weblog_Get#3