C++/MFC-进程优先级
来源:互联网 发布:sql求和 编辑:程序博客网 时间:2024/05/29 10:24
一、进程优先级(优先级等级)
简单的说就是进程(线程)的优先级越高,那么就可以分占相对多的CPU时间片。 每个进程都有相应的优先级,优先级决定它何时运行和占用 CPU 时间。最终的优先级共分32级,是从 0 到 31 的数值,称为基本优先级别。
(priority class)优先级等级,这里我叫它进程优先级。因为一般来说它是在调用CreateProcess时指定的,CreateProcess中dwCreationFlags就可以指定进程的优先级。而线程创建时会继承进程的优先等级。
因为线程才是CPU时间分配的最小单位,所以部分书上也叫线程优先等级。
进程优先级priority class
标志
优先级值
idle (低)
IDLE_PRIORITY_CLASS
4
Below 低于标准
BELOW_NORMAL_PRIORITY_CLASS
此值在2000以下系统不支持
normal (标准)
NORMAL_PRIORITY_CLASS
9(前台)或 7(后台)
Above 高于标准
ABOVE_NORMAL_PRIORITY_CLASS
此值在2000以下系统不支持
high (高)
HIGH_PRIORITY_CLASS
13
realtime (实时)
REALTIME_PRIORITY_CLASS
24
#define NORMAL_PRIORITY_CLASS 0x00000020
#define IDLE_PRIORITY_CLASS 0x00000040
#define HIGH_PRIORITY_CLASS 0x00000080
#define REALTIME_PRIORITY_CLASS 0x00000100
//2000及XP以上版本支持以下优先级等级
#define BELOW_NORMAL_PRIORITY_CLASS 0x00004000
#define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000
进程优先级可在任务管理器中的进程表中查看。右键相应的映像名称->设置优先级,即可查看当前的优先级。
二、获取当前进程句柄
GetCurrentProcess();
三、进程优先级的设置
CreateProcess 创建进程时 也可以设置 进程优先级
SetPriorityClass 设置进程优先级
GetPriorityClass 获取进程优先级
SetProcessPriorityBoost 设置 激活或停用进程优先级提高功能
GetProcessPriorityBoost 获取是否 激活进程优先级提高功能
四、示例代码
SetPriorityClass(GetCurrentProcess(),IDLE_PRIORITY_CLASS);//SetPriorityClass(获取当前进程句柄,进程优先级);
- C++/MFC-进程优先级
- C++/MFC-线程优先级
- C++/MFC-进程Process
- 进程优先级
- 进程优先级
- 进程优先级
- 进程优先级
- 进程优先级
- 进程优先级
- C++、MFC创建进程管理器的代码
- C++/MFC-进程/线程亲缘性
- C优先级
- C优先级
- C优先级
- C优先级
- C优先级
- C优先级
- c优先级
- HZDU 1008 Elevator
- 二叉树中的最大路径和
- zedboard qspi flash启动时,为什么program flash的加载速度很慢
- Android Studio中使用lambda表达式
- 图像特征提取
- C++/MFC-进程优先级
- 每天一个linux命令(50):crontab命令
- PhpExcel中文帮助手册|PhpExcel使用方法
- supersu 分类挂载命名空间 影响
- 【Python学习】Python解决汉诺塔问题
- java实现二叉排序树的删除节点
- android log 的工具类 ,把日志保存到本地
- 匿名函数,子函数和嵌套函数
- 15个常用的javaScript正则表达式