Узнать время выполнения программы используя StopWatch

Во время разработки программы может возникнуть ситуация, когда Вы захотите узнать, сколько занимает времени та или иная процедура в коде, не медленно ли? Ответ на этот вопрос может дать класс StopWatch определенный в  System.Diagnostics, который как раз и получает время исполнения определенного куска кода.

Чтобы было понятней приведем пример:

Stopwatch stopWatch = new Stopwatch();
stopWatch.Start();
//Вместо следующей строчки Ваш код
Thread.Sleep(10000);
stopWatch.Stop();
//Получить прошедшее время как TimeSpan
TimeSpan ts = stopWatch.Elapsed;
string elapsedTime = String.Format("{0:00}:{1:00}:{2:00}.{3:00}",
ts.Hours, ts.Minutes, ts.Seconds,
ts.Milliseconds / 10);
Console.WriteLine(elapsedTime);
Console.ReadLine();

У класс StopWatch есть два основных метода — это Start и Stop. Вызываем Start, с того момента, когда необходимо начать измерение и Stop, когда нужно его закончить. Свойство Elapsed вернет значение прошедшего времени в виде TimeSpan.

Методы

StartNew — Инициализация нового экземпляра StopWatch, сбрасывает прошедшее время в ноль и начинает измерять истекшее время;
Restart — Останавливает измерение, сбрасывает значение истекшего времени в ноль и начинает измерение сначала;
Reset — Останавливает измерение, сбрасывает в ноль истекшее время.

Свойства

ElapsedMilliseconds — Возвращает общее истекшее время, измеренное в текущем экземпляре, в миллисекундах.
ElapsedTicks — Возвращает общее истекшее время, измеренное в текущем экземпляре, в тиках (ticks).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *