class Timers::Events::Handle
Represents a cancellable handle for a specific timer event.
Attributes
The absolute time that the handle should be fired at.
Public Class Methods
Source
# File lib/timers/events.rb, line 12 def initialize(time, callback) @time = time @callback = callback end
Public Instance Methods
Source
# File lib/timers/events.rb, line 21 def cancel! # The simplest way to keep track of cancelled status is to nullify the # callback. This should also be optimal for garbage collection. @callback = nil end
Cancel this timer, O(1).
Source
# File lib/timers/events.rb, line 28 def cancelled? @callback.nil? end
Has this timer been cancelled? Cancelled timer’s don’t fire.
Source
# File lib/timers/events.rb, line 41 def fire(time) if @callback @callback.call(time) end end
Fire the callback if not cancelled with the given time parameter.