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.2"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.concurrencyObject

Returns the value of attribute concurrency.



15
16
17
# File 'lib/ztimer.rb', line 15

def concurrency
  @concurrency
end

.countObject (readonly)

Returns the value of attribute count.



15
16
17
# File 'lib/ztimer.rb', line 15

def count
  @count
end

.runningObject (readonly)

Returns the value of attribute running.



15
16
17
# File 'lib/ztimer.rb', line 15

def running
  @running
end

Class Method Details

.after(milliseconds, &callback) ⇒ Object



17
18
19
20
21
22
23
24
25
# File 'lib/ztimer.rb', line 17

def after(milliseconds, &callback)
  enqueued_at = 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



27
28
29
30
31
32
33
34
35
# File 'lib/ztimer.rb', line 27

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



37
38
39
# File 'lib/ztimer.rb', line 37

def jobs_count
  return @watcher.jobs
end