An idler is an object that tells the event loop to call its callback once per loop. This means your callback will be fired for each loop of the event loop (including when the loop has events to process…don’t be fooled into thinking it will only be called when the loop is idle!)
This class wraps an idler, which fires your callback once per loop of the event loop.
It is an opaque object meant to be passed to free-idler.
(defmethod idler-freed-p ((idler idler))) => t/nil
This method lets us know if an idler has already been freed.
(defun idle (callback &key event-cb)) => idler
Starts calling the
callback once per loop.
You can optionally pass an
:event-cb function, called when errors occur while
(defun free-idler (idler)) => nil
Stops the given idler and frees its resources.