10个C#程序员经常用到的实用代码片段

2019-12-26 13:40:17丽君

9 使用记秒表检查程序运行时间

如果你担忧某些代码非常耗费时间,可以用StopWatch来检查这段代码消耗的时间,如下面的代码所示

 

  1. System.Diagnostics.Stopwatch timer = new System.Diagnostics.Stopwatch();   timer.Start();  
  2. Decimal total = 0;   int limit = 1000000;  
  3. for (int i = 0; i < limit; ++i)   {  
  4. total = total + (Decimal)Math.Sqrt(i);   }  
  5. timer.Stop();   Console.WriteLine(“Sum of sqrts: {0}”,total);  
  6. Console.WriteLine(“Elapsed milliseconds: {0}”,   timer.ElapsedMilliseconds);  
  7. Console.WriteLine(“Elapsed time: {0}”, timer.Elapsed);  

现在已经有专门的工具来检测程序的运行时间,可以细化到每个方法,比如dotNetPerformance软件。

以上面的代码为例子,您需要直接修改源代码,如果是用来测试程序,则有些不方便。请参考下面的例子。

 

  1. class AutoStopwatch : System.Diagnostics.Stopwatch, IDisposable   {  
  2. public AutoStopwatch()   {  
  3. Start();   }  
  4. public void Dispose()   {  
  5. Stop();   Console.WriteLine(“Elapsed: {0}”, this.Elapsed);  
  6. }   }