global

def sleep


use the interval as normal for this sleep period.
"run" method exceeds our sleep "interval", then log a warning and just
method if the "use_strict_interval" flag is set. If the run time of the
Sleep for "interval" seconds adjusting for the run time of the "run"
def sleep
  time_to_sleep = interval
  if use_strict_interval and interval > 0
    diff = Time.now - @mark
    time_to_sleep = interval - diff
    if time_to_sleep < 0
      time_to_sleep = interval
      logger.warn "Run time [#{diff} s] exceeded strict interval [#{interval} s]"
    end
  end
  ::Kernel.sleep time_to_sleep
end  # @private