ceSetThreadPriority

一直採用SetThreadPriority,结果今天发帖询问线程时间问题,才突然顿悟。。。发现SetThreadPriority只设置248-255,也就是说就算是设为最高优先级,顶多是248.。。。差好远呢。。。而ceSetThreadPriority的设置范围是0-255,最高为0!!!我就说我的线程设置的优先级怎么没什么用。。。。。。NYYD。。。

初始化代码中的关键 Win32 API 调用是对 CeSetThreadPriority 的调用。此函数接受两个參数。第一个參数是线程句柄,第二个值介于 0-255 之间,用于描写叙述所需的优先级。选择使用哪个线程优先级很关键,而可以以图表表现应用程序优先级的使用,也有助于确保适当的性能。优先级从 0 至 247 的线程(0 表示最高优先级)是实时线程优先级,须要调用 CeSetThreadPriority 来訪问。一般线程优先级介于 248-255 之间,要使用
SetThreadPriority 进行訪问。下表提供了 Windows CE .NET 标准优先级实现的高速指南。

表 3:实时线程优先级:CeSetThreadPriority

优先级 组件
0-19 开放 - 高于驱动程序的实时
20 Permedia 垂直折返
21-98 开放 - 高于驱动程序的实时
99 电源管理恢复线程
100-108 USB OHCI UHCI、串行
109-129 Irsir1、NDIS、触摸板
130 KITL
131 VMini
132 CxPort
133-144 开放 - 设备驱动程序
145 PS2 键盘
146-147 开放 - 设备驱动程序
148 IRComm
149 开放 - 设备驱动程序
150 TAPI
151-152 开放 - 设备驱动程序
153-247 开放 - 低于驱动程序的实时

表 4:一般线程优先级:SetThreadPriority

优先级 组件
248 电源管理
249 WaveDev、TVIA5000、鼠标、PnP、电源
250 WaveAPI
251 电源管理器电池线程
252-255 开放

一般来说,最先须要决定的是要确定关键线程是否须要驱动程序。假设关键线程须要驱动程序才干正常工作,而将它的优先级设定为高于驱动程序的优先级,则非常难获得好的性能。总之,时间关键型应用程序须要放在“高于驱动程序类别的实时”类别中,优先级范围为 0-98。

最新文章

  1. 如何dos命令打开服务窗口?
  2. 深入理解DOM事件类型系列第二篇——键盘事件
  3. reflect2015破解
  4. Presto 来自Facebook的开源分布式查询引擎
  5. AutoCompleteTextView的应用
  6. TabHost刷新activity的方法
  7. oc 根据文件路径获取文件大小
  8. android用于打开各种文件的intent
  9. 制作 OpenStack Windows 镜像 - 每天5分钟玩转 OpenStack(152)
  10. spring 注入使用注解(不用xml)
  11. 【Python】 docker-py 用Python调用Docker接口
  12. centos环境下安装redis
  13. Git 的使用(皮毛))
  14. Envoy 源码分析--buffer
  15. LEFT JOIN、RIGHT JOIN、INNER JOIN、FULL JOIN 使用
  16. Ubuntu 分辨率显示出错,分辨率不是最佳分辨率的解决办法
  17. 2018.08.22 hyc的xor/mex(线段树/01trie)
  18. PAT 1051 复数乘法
  19. C#实现字符串相似度算法
  20. gridView删除提示框

热门文章

  1. 利用WinDbg找出程序崩溃的代码行号
  2. 图像编程学习笔记2——bmp位图平移
  3. jquery中实现全选按钮
  4. Linux Shell 函数返回值
  5. OCA读书笔记(16) - 执行数据库恢复
  6. 类是公共,它应该被命名为.java文件声明
  7. 关于matlab矩阵卷积conv2和傅里叶变换求卷积ifft2的关系
  8. Selenium 验证picklist是可被正确选中且是有序的(动态数组赋值)
  9. C++ Primer 学习笔记_61_重载操作符与转换 --自增/自减操作符
  10. POJ-1324-Holedox Moving(BFS)