Method: MessageBus::TimerThread#every

Defined in:
lib/message_bus/timer_thread.rb

#every(delay, &block) ⇒ Object



61
62
63
64
65
66
67
68
69
70
71
72
# File 'lib/message_bus/timer_thread.rb', line 61

def every(delay, &block)
  result = CancelableEvery.new
  do_work = proc do
    begin
      block.call
    ensure
      result.current = queue(delay, &do_work)
    end
  end
  result.current = queue(delay, &do_work)
  result
end