9 使用记秒表检查程序运行时间
如果你担忧某些代码非常耗费时间,可以用StopWatch来检查这段代码消耗的时间,如下面的代码所示
- System.Diagnostics.Stopwatch timer = new System.Diagnostics.Stopwatch(); timer.Start();
- Decimal total = 0; int limit = 1000000;
- for (int i = 0; i < limit; ++i) {
- total = total + (Decimal)Math.Sqrt(i); }
- timer.Stop(); Console.WriteLine(“Sum of sqrts: {0}”,total);
- Console.WriteLine(“Elapsed milliseconds: {0}”, timer.ElapsedMilliseconds);
- Console.WriteLine(“Elapsed time: {0}”, timer.Elapsed);
现在已经有专门的工具来检测程序的运行时间,可以细化到每个方法,比如dotNetPerformance软件。
以上面的代码为例子,您需要直接修改源代码,如果是用来测试程序,则有些不方便。请参考下面的例子。
- class AutoStopwatch : System.Diagnostics.Stopwatch, IDisposable {
- public AutoStopwatch() {
- Start(); }
- public void Dispose() {
- Stop(); Console.WriteLine(“Elapsed: {0}”, this.Elapsed);
- } }










