[C#] 코드의 성능을 알고 싶으면 Stopwatch를 쓰세요

이 코드부터 이 코드까지 실행되는데 얼마나 걸릴까 하는 의구심이 드실 때가 많으실 겁니다. 
C#에서는 간단히 Stopwatch 클래스를 사용하시면 됩니다.

Stopwatch 는 System.Diagnostics 네임스페이스 밑에 선언되어 있기 때문에
아래와 같이 using 문으로 System.Diagnostics를 추가하시면 사용하실 수 있습니다
(그냥 System.Diagnostics.Stopwatch 라고 사용하셔도 됩니다.)

using System.Diagnostics;
Stopwatch sw = new Stopwatch();
sw.Start();
// .. Do Something
sw.Stop();

Console.WriteLine(sw.Elapsed);

워낙에 사용하기 쉬운 클래스라 별 다른 설명이 필요 없을 것 같습니다.

시간이 경과된 결과는 아래와 같은 프로퍼티로 얻어올 수 있습니다.

Elapsed
ElasedMilisecond
ElasedTicks

경과된 Tick까지 비교가 되니까 나름 상당히 정확하겠죠?

혹시 라도 DateTime.Now 로 DateTime 인스턴스를 생성해서 경과시간을 비교하셨다면
이제부터 Stopwatch를 쓰세요~~~

chaoskcuf
프로그래밍/TIP& Study 2009/03/09 21:05

트랙백 주소 : http://chaoskcuf.com/trackback/188

댓글을 달아 주세요

  1. jjun 2009/05/27 17:46  수정/삭제  댓글쓰기

    이거 유용하겠네요. 맨날 DateTime.Now 로 찍었었는데;;

    • chaoskcuf 2009/05/27 18:01  수정/삭제

      DataTime.Now는 정확한 수치가 안나올 수도 있습니다.
      프레임워크단에서 권장하는 성능 체크 방법이니까요 Stopwatch 클래스를 사용하세요~

Powerd by Textcube, designed by criuce
rss