Effect of os clock change on timers
3 views (last 30 days)
I see that on Windows 7 and Matlab 2017a, timer execution can be thrown astray if OS clock jumps back. E.g., if timer callback was to execute at 09:00 and I set OS clock back by 5mins while timer is running, the callback will now execute at 0905 actual time (which is 0900 pc time). However if I advance the clock by 5min, the callback timing is unaffected and correctly triggers at 0900 actual time (which is 8:55pc time). On MacOS with 2022b timing is unaffected by os clock changes in either directions.
- Why is the behaviour different across platforms? Would be interesting to know how is it on Linux.
- Why is the behaviour not symmetric across clock jump forwards and backwards on Windows? How do timers work in general?
- How does one ensure external factors affecting OS clock (e.g. daylight savings shifts, windows updates whacking locale settings, etc) don't affect callback schedule on windows systems?