Coreoz / Wisp

A simple Java Scheduler library with a minimal footprint and a straightforward API
Apache License 2.0
133 stars 23 forks source link

Add a fixed frequency schedule #27

Closed mintdaniel42 closed 2 months ago

mintdaniel42 commented 2 months ago

When just adding the frequency to the current time, due to the system load the execution time will shift by a few milliseconds every run. So after a few hundred runs the delay will no longer be f.ex. 5 minutes but 5 minutes and 10 seconds. This is now fixed by always calculating the time remaining

amanteaux commented 2 months ago

Thank you for your contribution!

When using a fixed delay schedule, the shifting of a few milliseconds after each run is expected: https://github.com/Coreoz/Wisp/tree/master?tab=readme-ov-file#basics-schedules

To get around this, the existing solution to have a fixed frequency schedule is to use a cron expression: https://github.com/Coreoz/Wisp?tab=readme-ov-file#cron

I am not against creating a fixed delay schedule implementation though. If you are interested, can you update your PR with:

mintdaniel42 commented 2 months ago

Done 👍🏼

amanteaux commented 2 months ago

Thank you!! And sorry for the merge delay!

mintdaniel42 commented 2 months ago

No worries. I have to thank you for the merge 😃