一尘不染

计算方法的执行时间

c#

可能重复:
如何测量功能运行了多长时间?

我有一种I /
O耗时方法,可将数据从一个位置复制到另一个位置。计算执行时间的最好,最真实的方法是什么?ThreadTimerStopwatch?还有其他解决方案吗?我想要最精确,最简短的一个。


阅读 311

收藏
2020-05-19

共1个答案

一尘不染

Stopwatch
是为此目的而设计的,并且是衡量.NET中时间执行情况的最佳方法之一。

var watch = System.Diagnostics.Stopwatch.StartNew();
// the code that you want to measure comes here
watch.Stop();
var elapsedMs = watch.ElapsedMilliseconds;

不要 使用DateTime来衡量.NET中的时间执行。


更新:

正如@
series0ne在注释部分所指出的:如果要真正精确地测量某些代码的执行情况,则必须使用操作系统内置的性能计数器。在以下的答案必须包含一个很好的概述。

2020-05-19