agronholm / apscheduler

Task scheduling library for Python
MIT License
6.18k stars 704 forks source link

Wake up the scheduler on resume events or system clock changes #794

Open agronholm opened 12 months ago

agronholm commented 12 months ago

Things to check first

Feature description

If the host is suspended (by entering a sleep state) and then is resumed, the scheduler should be woken up immediately. Likewise, the scheduler should detect system clock changes whenever possible.

ChatGPT provided some helpful answers on how to accomplish this: https://chat.openai.com/share/a9811e15-29df-462a-9134-b7b231d79133

It also seems like FreeBSD, as of the 13.2 release, also supports timerfd: https://www.freebsd.org/status/report-2023-01-2023-03/#_native_linux_timerfd

Use case

It would be preferable not to have the scheduler overshoot the next schedule due to the host computer being suspended.