(说话算话,补分180)国庆无聊,写个高精度的定时器打发下时间,顺便散点分

supconsupcon 2009-10-06 10:09:17
http://blog.csdn.net/supconsupcon/archive/2009/10/05/4633482.aspx
...全文
237 41 打赏 收藏 转发到动态 举报
写回复
用AI写文章
41 条回复
切换为时间正序
请发表友善的回复…
发表回复
悟迟 2009-10-12
  • 打赏
  • 举报
回复
接分
飞天赤狐 2009-10-12
  • 打赏
  • 举报
回复
我顶啊
晒月光的青蛙 2009-10-12
  • 打赏
  • 举报
回复
写的不错
Beloria 2009-10-12
  • 打赏
  • 举报
回复
接分。
思年华 2009-10-12
  • 打赏
  • 举报
回复
谢啦
tzqqkl 2009-10-12
  • 打赏
  • 举报
回复
楼上的高见
chengzhicn 2009-10-12
  • 打赏
  • 举报
回复
QueryPerformanceCounter/QueryPerformanceFrequency 确实是轻量级的,但是你的其他代码太重量级了,造成整个定时器达不到高精度的效果。

你可以考虑用CreateTimerQueue/CreateTimerQueueTimer、CreateWaitableTimerEx/SetWaitableTimerEx/APC调用 等技术来实现,都比你现在的代码要轻量多了。
chengzhicn 2009-10-12
  • 打赏
  • 举报
回复
在Windows下实现高精度定时没啥意义,Windows本来就不是实时系统,无论如何精度也高不过CPU时间片。
再看LZ的代码,开个定时器都会把一个核心用到100%,至于吗?还让电脑怎么用啊?

还有,每加一个定时器就开个新线程(创建线程也是有时间开销的),而且都绑到核心0上,LZ有计算线程切换的时间吗?开上20个Timer,CPU就光处理线程切换了。还不如用timeSetEvent效率高(虽然timeSetEvent最多只能开16个Timer)。

高精度定时最好还是用硬件实现,例如 HPET(High Precision Event Timer),P4 以后的电脑都有这个设备
bragi523 2009-10-12
  • 打赏
  • 举报
回复
[Quote=引用 34 楼 ggw007 的回复:]
呜呜呜呜呜呜。。。。。。
什么破代码呀!俺就是因为用了你的代码,程序运行了才两天计算机就给烧坏了。老板正要吵着让俺赔呢,俺工资才多少啊?才1700老,那个死老板让俺赔他8000啊,俺不吃不喝要给他白干几个月呀!

俺要让你赔钱!!!
呜呜呜呜呜呜。。。。。。
[/Quote]
不是吧
ggw007 2009-10-12
  • 打赏
  • 举报
回复
呜呜呜呜呜呜。。。。。。
什么破代码呀!俺就是因为用了你的代码,程序运行了才两天计算机就给烧坏了。老板正要吵着让俺赔呢,俺工资才多少啊?才1700老,那个死老板让俺赔他8000啊,俺不吃不喝要给他白干几个月呀!

俺要让你赔钱!!!
呜呜呜呜呜呜。。。。。。
yuhudie203 2009-10-12
  • 打赏
  • 举报
回复
顶 一下
幸福官 2009-10-12
  • 打赏
  • 举报
回复
好人越来越多了
Wind_Runner 2009-10-12
  • 打赏
  • 举报
回复
support!
极速闪电 2009-10-12
  • 打赏
  • 举报
回复
LZ牛人啊,国庆还写程序, 接分吧.
vann1982 2009-10-12
  • 打赏
  • 举报
回复
jf
tzqqkl 2009-10-12
  • 打赏
  • 举报
回复
接分了,多谢楼主
Formular1 2009-10-12
  • 打赏
  • 举报
回复
不错。
YeBinYe 2009-10-12
  • 打赏
  • 举报
回复
顶一个!
delphiwcdj 2009-10-11
  • 打赏
  • 举报
回复
up
xwsn007 2009-10-11
  • 打赏
  • 举报
回复
学习,顶上去
加载更多回复(21)

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧