若某个Timer长时间占用处理器资源的话,其他的定时器Timer是无法获得响应的,一旦独占处理器的Timer向系统还复CPU资源,其他的定时器事件将会一起被处理的,因为,Windows是“事件模型”工作的。
一般地,如果某个Timer会很忙的话,可以有多种办法来转换CPU资源,将CPU交还给OS。方法有:
1、在程序代码中加入转让控制权的代码:application.procemessages;
2、定时器执行互斥:也就是说,对于执行耗时的Timer,有必要对它的每次操作进行互斥。就是指,保证执行耗时的Timer每一次执行完结后,才开始下一次处理;