1. 知识点:
  2. 进程优先级
  3. 获取当前进程句柄
  4. 优先级设置
  5. 优先级变动
  6. 优先级获取
  7.  
  8. 一、进程优先级(优先级等级)
  9.  
  10. 简单的说就是进程(线程)的优先级越高,那么就可以分占相对多的CPU时间片。 每个进程都有相应的优先级,优先级决定它何时运行和占用 CPU 时间。最终的优先级共分32级,是从 的数值,称为基本优先级别。
  11.  
  12. priority class)优先级等级,这里我叫它进程优先级。因为一般来说它是在调用CreateProcess时指定的,CreateProcessdwCreationFlags就可以指定进程的优先级。而线程创建时会继承进程的优先等级。
  13. 因为线程才是CPU时间分配的最小单位,所以部分书上也叫线程优先等级。
  14.  
  15. 进程优先级 priority class 标志 优先级值
  16. idle (低) IDLE_PRIORITY_CLASS
  17. Below 低于标准 BELOW_NORMAL_PRIORITY_CLASS 此值在2000以下系统不支持
  18. normal (标准) NORMAL_PRIORITY_CLASS (前台) (后台)
  19. Above 高于标准 ABOVE_NORMAL_PRIORITY_CLASS 此值在2000以下系统不支持
  20. high (高) HIGH_PRIORITY_CLASS
  21. realtime (实时) REALTIME_PRIORITY_CLASS
  22. #define NORMAL_PRIORITY_CLASS 0x00000020
  23. #define IDLE_PRIORITY_CLASS 0x00000040
  24. #define HIGH_PRIORITY_CLASS 0x00000080
  25. #define REALTIME_PRIORITY_CLASS 0x00000100
  26.  
  27. //2000及XP以上版本支持以下 优先级等级
  28. #define BELOW_NORMAL_PRIORITY_CLASS 0x00004000
  29. #define ABOVE_NORMAL_PRIORITY_CLASS 0x00008000
  30.  
  31. 二、获取当前进程句柄
  32. GetCurrentProcess
  33. 三、进程优先级的设置
  34. CreateProcess 创建进程时 也可以设置 进程优先级
  35. SetPriorityClass 设置进程优先级
  36. GetPriorityClass 获取进程优先级
  37. SetProcessPriorityBoost 设置 激活或停用进程优先级提高功能
  38. GetProcessPriorityBoost 获取 是否 激活进程优先级提高功能
  39.  
  40. void CDialog_PROCESS::OnBnClickedRadio1()
  41. {
  42. SetPriorityClass(GetCurrentProcess(),IDLE_PRIORITY_CLASS);
  43. }
  44.  
  45. void CDialog_PROCESS::OnBnClickedRadio2()
  46. {
  47. SetPriorityClass(GetCurrentProcess(),BELOW_NORMAL_PRIORITY_CLASS);
  48. }
  49.  
  50. void CDialog_PROCESS::OnBnClickedRadio3()
  51. {
  52. SetPriorityClass(GetCurrentProcess(),NORMAL_PRIORITY_CLASS);
  53. }
  54.  
  55. void CDialog_PROCESS::OnBnClickedRadio4()
  56. {
  57. SetPriorityClass(GetCurrentProcess(),ABOVE_NORMAL_PRIORITY_CLASS);
  58. }
  59.  
  60. void CDialog_PROCESS::OnBnClickedRadio5()
  61. {
  62. SetPriorityClass(GetCurrentProcess(),HIGH_PRIORITY_CLASS);
  63. }
  64.  
  65. void CDialog_PROCESS::OnBnClickedRadio6()
  66. {
  67. SetPriorityClass(GetCurrentProcess(),REALTIME_PRIORITY_CLASS);
  68. }

mfc 进程的优先级的更多相关文章

  1. EPROCESS 进程/线程优先级 句柄表 GDT LDT 页表 《寒江独钓》内核学习笔记(2)

    在学习笔记(1)中,我们学习了IRP的数据结构的相关知识,接下来我们继续来学习内核中很重要的另一批数据结构: EPROCESS/KPROCESS/PEB.把它们放到一起是因为这三个数据结构及其外延和w ...

  2. 进程的优先级 与 CFS 进程调度

    在Linux下改变进程的优先级 作者:曾老师,华清远见嵌入式学院讲师. 作为多任务的操作系统,Linux内核为每个创建的进程分配时间片并根据其优先级进行调度.当进程被创建时,其对应的task_stru ...

  3. 第11讲- Android中进程及其优先级

    第11讲Android中进程及其优先级 进程与线程: 进程:操作系统结构的基础,资源分配的最小单元,一个操作系统包括多个进程: 线程:线程存在于进程当中,是操作系统调试执行的最小单元,一个进程包括多个 ...

  4. mfc 线程的优先级

    知识点:  线程优先级  获取当前线程句柄  线程优先级设置  线程优先级变动  线程优先级获取 一.线程优先级(Thread priority ) 简单的说就是(线程)的优先级越高,那么就 ...

  5. 改变进程的优先级,nice,getpriority,setpriority

    int getpriority(int which, int who);返回一组进程的优先级 参数which和who确定返回哪一组进程的优先级 The value which is one of PR ...

  6. RHCE7 管理II-5管理进程的优先级

    进程的优先级值称为进程的nice值,共有40种不同的取值(用数字-20到19表示) nice值越大,表示进程的优先级越低. 进程的nice值,只允许root用户来设置负的nice:其他用户只允许设置正 ...

  7. Linux中进程的优先级

    Linux採用两种不同的优先级范围,一种是nice值.还有一种是实时优先级. 1.nice值 nice值得范围是-20~19,默认值是0. 越大的nice值意味着更低的优先级.也就是说nice值为-2 ...

  8. android中进程的优先级

    android中进程的优先级

  9. Linux基础进程管理优先级

    一.进程优先级 Linux进程调度及多任务 每个cpu(或者cpu核心)在一个时间点上只能处理一个进程,通过时间片技术,Linux实际能够运行的进程(和线程数)可以超出实际可用的cpu及核心数量.Li ...

随机推荐

  1. 【Kibana】Kibana入门教程

    一.Kibana简介及下载安装 Kibana是专门用来为ElasticSearch设计开发的,可以提供数据查询,数据可视化等功能. 下载地址为:https://www.elastic.co/downl ...

  2. ie8 透明背景不能点击问题

    最近开发网站,需求是三个一屏,1和3只能看见一半,2显示在中间,无箭头按钮. 因为之前写过一个有前后按钮的插件,想着怎么就在这上面改造,故把前后按钮去掉背景,定位在了1和3的位置上来实现点击前后, 发 ...

  3. MySQL 命令行操作集合

    1.导入数据库 ) 登录 mysql -uroot -p Enter password: 2) 创建数据库create database pluto_0; 3)导入 source /var/www/m ...

  4. WebAPI返回时间数据不带T

    最近一段时间项目里面使用WebAPI比较多,但是在返回时间数据的时候回默认带上T,就像这样子 "2016-04-21T13:26:17.4701811+08:00", 这样的数据在 ...

  5. python自学——文件修改

    #如何修改文件,我们知道文件因为在磁盘上已经有储存了,后面要更新或修改,只能在在原来文件后面追加使用f=open("wenjian_name","r+",enc ...

  6. EJB Remote/Local 绑定和JNDI Lookup

    从同事那里学到一种方便的注解SessionBean的方式.代码我放到github去了 https://github.com/EdisonXu/Test/commit/703d49123dca9e666 ...

  7. 美式九球比赛规则 (Nine-ball)

    九球比赛规则 (Nine-ball) 九球比赛规则 一.器材: 1.台面规格: a.内沿长254厘米. b.内沿宽127厘米. c.高80厘米. d.角袋口内沿最近距离为10.5厘米(±1毫米),腰袋 ...

  8. python基础学习22----协程

    协程,又称微线程.英文名Coroutine. 协程最大的优势就是协程极高的执行效率.因为子程序切换不是线程切换,而是由程序自身控制,因此,没有线程切换的开销,和多线程比,线程数量越多,协程的性能优势就 ...

  9. ansible 增加本机/etc/hosts 下hostsname 与IP

    --- - hosts: all vars: IP: "{{ ansible_eth0['ipv4']['address'] }}" tasks: - name: 将原有的host ...

  10. 难度并不NOIP的NOIP模拟赛

    今天老师请了前几届的学长来讲课,可是讲课为什么要考试呢... 学长说难度是NOIP,于是我就naive的跟着参加了,然而T3难度并不友好,感觉确实不是很适合我们现在做......不过课本来也不是给我们 ...