在WINCE6.0或者5.0有没有提供一种API能够指定系统多长时间来调度一次指定的线程,比喻说,指定5ms来调用一次指定的线程!(或者是其它实现方法,最好不要是周期性中断,此方法我已经实现)
怎么没有人回贴啊!不管了解的,不了解的,请发表一下看法!
建立的线程程每过指定时间执行一次不行吗?一定要由外部的其它程序来执行它?
“建立的线程程每过指定时间执行一次不行吗?”这个看起来不行吧,线程是由操作系统调度的,并不能知道他什么时来调度指定的线程啊。
比喻说,我现在有一个线程的作用是每隔10ms要求和一别的对象通信一次,现在就是我现想让系统每隔10ms就来执行一次我这个线程。这个能行吗?
在线程里边Sleep(10);再加上你的代码。
这样间隔10ms就会执行一次你的代码,但是由于这个Sleep是由软件来完成的,所以不能达到十分精确,如果要精确就需要用硬件定时器,不过要求不严格的话这种用法就已经能够满足要求了。
如果要实现比较严格的周期性高度的话,那基本只能是使用硬件定时产生周性中断才能了。
WinCE支持POSIX.4b(合称POSIX.4)标准吗?
估计只能用定时器,它的优先级很高,用sleep的,没办法保证的
可以创建一个线程,之后一直等待事件EVENT,而在主线程中开启一个定时器隔一段时间向线程发送一个事件EVENT
但是能不能保证每隔多少一定时间(比喻说5ms),我这个线程能够保证被调度执行,误差不超过正负50微秒。