Windows CE 下线程的优先级设置

来源:互联网 发布:现货白银分钟线数据 编辑:程序博客网 时间:2024/06/15 08:26
Windows CE基于优先级的设置来选择将要运行的线程,高优先级的线程将比低优先级的线程更加优先被调度。WinCE系统支持0~255共256个优先级,其中0优先级最高,255优先级最低,0~248属于实时性优先级。WinCE系统中线程的优先级层次如下:
0~96: 高实时性应用程序的线程
97~152:驱动程序线程
153~247:低实时性应用程序的线程
248~255:非实时应用程序的线程

在英创提供的ARM9系统嵌入式板卡中,都预装了WinCE 5.0 内核,常用的通讯接口的驱动也是按照上述的优先级层次来设置规划的。
101: USB 键盘
103: 串口驱动
109: 触摸键
116: NDIS(网络)

在进行WinCE应用程序开发时,利用CreateThread(…)函数创建的应用线程,其优先级缺省为 251,即THREAD_PRIORITY_NORMAL。如果需要对线程的优先级进行调整,可以调用相应的函数来操作。设置和获得一个线程的优先级,可以调用函数CeSetThreadPriority和函数CeGetThreadPriority,这两个函数对于所有的256个优先级都是可用的。这里需要注意的是,还有两个函数也可以用:函数SetThreadPriority和函数GetThreadPriority,但是它们只能设置或获取最低的8个优先级,即248~255,这8个优先级对应WinCE早期版本的8个优先级。
原创粉丝点击