Class: Dill::Checkpoint::Timer

Inherits:
Object
  • Object
show all
Defined in:
lib/dill/checkpoint.rb

Defined Under Namespace

Classes: Frozen

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(duration) ⇒ Timer

Returns a new instance of Timer.



13
14
15
# File 'lib/dill/checkpoint.rb', line 13

def initialize(duration)
  @duration = duration
end

Instance Attribute Details

#durationObject (readonly)

Returns the value of attribute duration.



17
18
19
# File 'lib/dill/checkpoint.rb', line 17

def duration
  @duration
end

Instance Method Details

#elapsedObject



23
24
25
# File 'lib/dill/checkpoint.rb', line 23

def elapsed
  now - start_time
end

#expired?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/dill/checkpoint.rb', line 19

def expired?
  duration < elapsed
end

#startObject



27
28
29
# File 'lib/dill/checkpoint.rb', line 27

def start
  @start_time = now
end

#tickObject

Raises:



31
32
33
34
35
# File 'lib/dill/checkpoint.rb', line 31

def tick
  sleep tick_duration

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