改变时钟的精度
环境:Win Xp、Visual C++
我使用clock() 来测量程序中的时间成本。 但 t_clock 始终是 10 的倍数,例如 10、20、30, 40、... 而我想要得到1的精度,比如11、12、13、14…… 如何更改 t_clock 的精度?
谢谢
Env: Win Xp, Visual C++
I use clock() to measure the time cost in my program.
But the t_clock always be the multiply of 10, for example 10, 20, 30,
40,...
And I want to get the precision of 1, such as 11, 12, 13, 14...
How can I change the t_clock's precision?
thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你不能; Clock() 使用系统的普通 RTC。您实际需要使用的是高性能定时器。 http://msdn.microsoft.com/en-us/magazine/cc163996.aspx
You can't; clock() uses the system's ordinary RTC. What you actually need to use are High Performance Timers. http://msdn.microsoft.com/en-us/magazine/cc163996.aspx
使用 timeBeginPeriod API 调用将分辨率提高到 1 毫秒。
Use the timeBeginPeriod API call to increase resolution to 1ms.