タイマーとスケジューリング - lisp-cookbook-ja/common-lisp GitHub Wiki
タイマー処理
スケジュール処理 : cl-cron
Linux におけるスケジューラ cron のような動作を Common Lisp 環境上で実現できます。cronを使用しているわけではないため、Windows, MacOS でも使用可能です。
1日毎、1か月毎、1年毎といった長期間にわたる定期処理を実行することができます。
5分毎であれば
(cron:start-cron)
(cron:make-cron-job #'(lambda () (format t "Print this each 5 minutes")) :step-min 5)
1年ごとは少し特殊ですが12か月ごとの処理として実現できそうです。
(cron:start-cron)
(cron:make-cron-job #'(lambda () (format t "Print this each year")) :step-month 12)
cl-cron のスケジュール処理を終了するには, stop-cron 関数を使用します
(cron:stop-cron)
'''参考'''