Module: Ztimer

Defined in:
lib/ztimer.rb,
lib/ztimer/slot.rb,
lib/ztimer/version.rb,
lib/ztimer/watcher.rb,
lib/ztimer/sorted_store.rb

Defined Under Namespace

Classes: Slot, SortedStore, Watcher

Constant Summary collapse

VERSION =
"0.4.0"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.concurrencyObject

Returns the value of attribute concurrency.



20
21
22
# File 'lib/ztimer.rb', line 20

def concurrency
  @concurrency
end

.countObject (readonly)

Returns the value of attribute count.



20
21
22
# File 'lib/ztimer.rb', line 20

def count
  @count
end

.runningObject (readonly)

Returns the value of attribute running.



20
21
22
# File 'lib/ztimer.rb', line 20

def running
  @running
end

Class Method Details

.after(milliseconds, &callback) ⇒ Object



22
23
24
25
26
27
28
29
30
# File 'lib/ztimer.rb', line 22

def after(milliseconds, &callback)
  enqueued_at = @metric.utc_microseconds
  expires_at  = enqueued_at + milliseconds * 1000
  slot        = Slot.new(enqueued_at, expires_at, -1, &callback)

  add(slot)

  return slot
end

.every(milliseconds, &callback) ⇒ Object



32
33
34
35
36
37
38
39
40
# File 'lib/ztimer.rb', line 32

def every(milliseconds, &callback)
  enqueued_at = @metric.utc_microseconds
  expires_at  = enqueued_at + milliseconds * 1000
  slot        = Slot.new(enqueued_at, expires_at, milliseconds * 1000, &callback)

  add(slot)

  return slot
end

.jobs_countObject



42
43
44
# File 'lib/ztimer.rb', line 42

def jobs_count
  return @watcher.jobs
end