Method: MessageBus::TimerThread#every

Defined in:
lib/message_bus/timer_thread.rb

#every(delay, &block) ⇒ Object



46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/message_bus/timer_thread.rb', line 46

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