Недавно я реализовал в ржавчине cron-подобную функциональность и ищу библиотеку планировщика. Я бы в своем воображении реализовал такой планировщик следующим образом:
- проверка события по тику
scheduler = Scheduler()
scheduler.on("*/10 * * * *").do( (){println("something")} )
while true {
if scheduler.time_to_wake_up {
scheuler.do_work()
}
sleep(100ms);
}
вычислить время и подождать
scheduler = Scheduler()
scheduler.on("*/10 * * * *").do( (){println("something")} )
while true {
sleep(scheduler.next_event_time() - now());
scheduler.do_work()
}
Однако я вижу реализацию в 1 гораздо больше, чем в 2, что, по-моему, занимает больше времени процессора. Есть ли вообще причина так делать?