Chinaunix首页 | 论坛 | 博客
  • 博客访问: 455099
  • 博文数量: 724
  • 博客积分: 40000
  • 博客等级: 大将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-13 14:47
文章分类

全部博文(724)

文章存档

2011年(1)

2008年(723)

我的朋友

分类:

2008-10-13 17:19:06

liangquan:初学者,发言如有问题请原谅。
我是搞机械控制的,高精度的定时器是控制领域内必需的。可是我看过许多文章,还有网上的争论,好像对VC是否可以达到1ms的定时精度表示怀疑,但好像说在仿真时这个精度足够了。
我觉得你的设计模式讲的很好,我很少看到有人这么讲。用Visio(对吧?)和UML表达设计思路,非常好,能给我推荐几本讲这方面的书好么?谢谢!
(发表于2006-5-8 14:52:00)

zyl910:timeSetEvent等高精度定时器是利用创建一个高优先级线程反复检查系统时间来实现的。极度浪费CPU资源!
一般情况下最好使用QueryPerformanceCounter、QueryPerformanceFrequency。
至少QueryPerformanceCounter是使用PC机固有的8253/8254计时芯片体系实现的,精度为70ns。
其实timeSetEvent等高精度定时器就是靠“高优先级线程反复检查QueryPerformanceCounter”来实现的。
(发表于2006-5-8 18:02:00)

imhunter:有时间对这种方式进行一下测试,看看其误差到底有多少..
(发表于2006-5-8 18:42:00)

NASA_HELLO:方法挺好的,其实,定时器不管采用什么方法,都是有误差的,就是需要我们需要一个可接受的误差就好了,至于占用CPU 我发现精确度越高占用越多.
(发表于2006-5-16 16:23:00)

forestt:不知道楼主想干什么。。有那么复杂么?
(发表于2006-6-8 11:35:00)

gbstar:WM_TIMER 精度在 55ms 以上,并且是低优先级消息,容易被丢弃。多媒体定时器精确的多,但是也比较消耗资源。
(发表于2006-6-16 21:51:00)

24431188:我是楼主,不知道forestt先生所说的复杂是指什么?
如果只是为了实现定时器,那么只要timeSetEvent就行了,但是如果要考虑到可维护性的话,我想还是得按照面向对象的思想来进行封装,如果觉得确实有不妥之处,请来信详细指明,小子我愿闻其详。

goman
(发表于2006-6-27 0:36:00)

..........................................................................
--------------------next---------------------

阅读(201) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~