System.Diagnostics.Stopwatch
- ваш лучший выбор. Однако точная точность будет зависеть от аппаратного обеспечения используемого вами компьютера, т. Е. От того, доступен ли счетчик производительности с высоким разрешением. (Вы можете проверить это с помощью поля IsHighResolution
.)
Пример использования:
Stopwatch sw = Stopwatch.StartNew();
// Do stuff here
sw.Stop();
TimeSpan time = sw.Elapsed;
Обратите внимание, что если вы используете свойство ElapsedTicks
, оно измеряется в тиках timer , что отличается от тиков, используемых в DateTime
и TimeSpan
. Это поразило меня раньше - вот почему я всегда использую свойство ElapsedMilliseconds
или Elapsed
.