在.NET中,最方便准确地测量经过的墙钟时间的方法是什么?如果可能的话,我正在寻找具有微秒精度的方法(10^-6秒)。
在.NET中,最方便准确地测量经过的墙钟时间的方法是什么?如果可能的话,我正在寻找具有微秒精度的方法(10^-6秒)。
System.Diagnostics.Stopwatch
来计时。但是,精确度取决于您使用的计算机硬件,即高分辨率性能计数器是否可用(可以通过IsHighResolution
字段进行检查)。以下是一个示例:Stopwatch sw = Stopwatch.StartNew();
// Do stuff here
sw.Stop();
TimeSpan time = sw.Elapsed;
ElapsedTicks
属性,则该属性测量的是计时器滴答声,而不是 DateTime
和 TimeSpan
中使用的滴答声。这曾经让我困扰过 - 这就是为什么我总是使用 ElapsedMilliseconds
或者 Elapsed
属性。