有没有办法在Windows上测量微秒精度的时间?

时间:2014-01-10 06:46:02

标签: c++ c++11

我的问题:

  1. 从服务器接收广播。

  2. 从我的中间层接收广播。

  3. 这里我在同一毫秒内在服务器UDP应用程序中接收两个广播。如何找到它们与微秒精度之间的差异?

    如何以微秒精度水平测量时间?

2 个答案:

答案 0 :(得分:1)

使用QueryPerformanceCounter。它取决于机器,但是现在大多数处理器运行得非常快,并且你会比微秒精度更好。

答案 1 :(得分:0)

在20世纪90年代,我写了一个在MS-DOS上运行的程序,该程序使用了名为Ryle Design的公司名为Personal Computer High Resolution Timing(PCHRT)的产品。愉快,密歇根州。

他们的产品提供了一个提供微秒解析的例程库。通过与当时PC中的8253或8254定时芯片直接接口,它工作得非常漂亮。

如果您可以追踪Ryle Design,他们可能已经找到了一种在Microsoft Windows下提供高分辨率计时的方法。

当Windows取代MS-DOS时,我不得不放弃该产品,并使用microcontroller将我的产品转移到自定义硬件中,以实现高分辨率计时。我找不到在Microsoft Windows下获得高分辨率计时的方法。

这篇文章尽管已有多年历史,但可能有所帮助:

http://msdn.microsoft.com/en-us/magazine/cc163996.aspx