일부 코드에 시간이 많이 소요되는 것이 걱정된다면 다음 코드와 같이 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); } }
아래 코드와 같이 구문을 사용하면 코드의 실행 시간을 확인하고 콘솔에 인쇄할 수 있습니다.
using (new AutoStopwatch()) { Decimal total2 = 0; int limit2 = 1000000; for (int i = 0; i < limit2; ++i) { total2 = total2 + (Decimal)Math.Sqrt(i); } }