cl-cron
cl-cron is a simple cron like library that allows you to set up cron-like jobs and run them at predetermined times. The library has been tested on SBCL so far.

Depends on: bordeaux-threads

Repository: https://github.com/ciel-lang/cl-cron

License: GPL3


Implementation details (2023-11-06)

  • Runs a "dispatcher" threads
  • The dispatcher threads, every minutes, maps through every jobs to see if there is one that should run this minute
  • Jobs are run in another thread
  • Jobs are CLOS objects
  • Jobs are stored in a hash-table (with :test 'eql).
    • The user can provide a key to use when creating a job, but the default uses a gensym
    • Which means that calling make-cron-job twice without specifying the :hash-key will create two separate jobs.