class Dill::Checkpoint::Timer

Attributes

duration[R]
start_time[R]

Public Class Methods

new(duration) click to toggle source
# File lib/dill/checkpoint.rb, line 24
def initialize(duration)
  @duration = duration
end

Public Instance Methods

elapsed() click to toggle source
# File lib/dill/checkpoint.rb, line 34
def elapsed
  now - start_time
end
expired?() click to toggle source
# File lib/dill/checkpoint.rb, line 30
def expired?
  duration < elapsed
end
start() click to toggle source
# File lib/dill/checkpoint.rb, line 38
def start
  @start_time = now
end
tick() click to toggle source
# File lib/dill/checkpoint.rb, line 42
def tick
  sleep tick_duration

  raise Frozen, 'time appears to be frozen' if frozen?
end

Protected Instance Methods

frozen?() click to toggle source
# File lib/dill/checkpoint.rb, line 56
def frozen?
  now == start_time
end
now() click to toggle source
# File lib/dill/checkpoint.rb, line 50
def now
  Time.now
end
tick_duration() click to toggle source
# File lib/dill/checkpoint.rb, line 60
def tick_duration
  0.05
end