有谁知道,如果HiPerfTimer或秒表类是基准更好,为什么?
Answer 1:
秒表是基于高分辨率定时器(如果有的话),你可以检查与IsHighResolution
Answer 2:
他们都是一样的,当涉及到高分辨率的时机。
两者都使用这样的:
[DllImport("Kernel32.dll")]
private static extern bool QueryPerformanceCounter(out long PerformanceCount);
还有这个:
[DllImport("Kernel32.dll")]
private static extern bool QueryPerformanceFrequency(out long Frequency);
做下层定时。 (您可以验证这一点与Reflector.NET)。 我会使用秒表,因为它是框架的一部分已经(无需连接其它的DLL),它具有更好的功能比HiPerfTimer。
Answer 3:
StopWatch-它也适用于不支持高分辨率性能计数器的系统和你不需要任何外部库来使用它。
如果有一个高分辨率计数器不支持另一种抛出Win32Exception。
文章来源: High-Performance Timer vs StopWatch