class Clarion::Counters::Memory

Public Class Methods

new(*) click to toggle source
Calls superclass method Clarion::Counters::Base::new
# File lib/clarion/counters/memory.rb, line 7
def initialize(*)
  super
  @lock = Mutex.new
  @counters = {}
end

Public Instance Methods

get(key) click to toggle source
# File lib/clarion/counters/memory.rb, line 13
def get(key)
  @lock.synchronize do
    @counters[key.handle]
  end
end
store(key) click to toggle source
# File lib/clarion/counters/memory.rb, line 19
def store(key)
  @lock.synchronize do
    counter = @counters[key.handle]
    if !counter || key.counter > counter
      @counters[key.handle] = key.counter
    end
  end
end