Method: Packet::Core::CommonMethods#check_for_timer_events

Defined in:
lib/packet/packet_core.rb

#check_for_timer_eventsObject



288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
# File 'lib/packet/packet_core.rb', line 288

def check_for_timer_events
  #         @timer_hash.delete_if do |key,timer|
  #           if timer.cancel_flag
  #             true
  #           elsif timer.run_now?
  #             timer.run
  #             (timer.respond_to?(:interval)) ? false : true
  #           else
  #             false
  #           end
  #         end

  ready_timers = @timer_hash.collect { |key,timer| timer if timer.run_now? }.compact
  ready_timers.each { |timer| timer.run }
  @timer_hash.delete_if { |key,timer|
    timer.cancel_flag || (!timer.respond_to?(:interval) && ready_timers.include?(timer)) || false
  }
end