Я еще не тестировал это. Я надеюсь, что кто-то уже знает ответ, поэтому мне не нужно писать тестовое приложение, иначе я это сделаю.:)
Обычно, когда я хочу сравнить время, я просто храню DateTime.Now
и сравниваю его позже. Я считаю, что это дает неправильные результаты, когда пользователь меняет время системы пользователя где-то посередине.
Это заставило меня задаться вопросом, ведут ли таймеры то же самое. Какие таймеры .NET зависят от установленного системного времени? Подумайте о начале таймера, который должен пройти через один час. Будет ли это срабатывать, когда я установлю системное время на один час вперед?
Я никогда не заботился об этом возможном поведении, но это может быть важно в некоторых сценариях. Какие таймеры безопасны против этого сценария, а какие из них наиболее определенно не являются?