Скорее всего, точность таймера.Который по умолчанию составляет 16 мс (в более новых версиях Windows) и может быть уменьшен до 1 мс с помощью timeBeginPeriod(1)
(потенциально увеличивая энергопотребление компьютера).
Все функции «абсолютного времени» в Windows, которые я знаю, работаютс точностью таймера.Поэтому я ожидаю, что он не будет лучше или хуже, чем DateTime.Now
.
Функции относительного времени (StopWatch
, QueryPerformanceCounter
) имеют более высокую точность, но не дают значимого абсолютного времени.Они также могут страдать от проблем синхронизации между несколькими ядрами ЦП.
Но почему бы вам не проверить это: напишите небольшую программу, которая считывает время и печатает его всякий раз, когда оно увеличивается.Сделайте то же самое для DateTime.Now
.И сравните.