class Sidekiq::Processor::Counter
Ruby doesn't provide atomic counters out of the box so we'll implement something simple ourselves. bugs.ruby-lang.org/issues/14706
Public Class Methods
new()
click to toggle source
# File lib/sidekiq/processor.rb, line 203 def initialize @value = 0 @lock = Mutex.new end
Public Instance Methods
incr(amount = 1)
click to toggle source
# File lib/sidekiq/processor.rb, line 208 def incr(amount = 1) @lock.synchronize { @value += amount } end
reset()
click to toggle source
# File lib/sidekiq/processor.rb, line 212 def reset @lock.synchronize { val = @value @value = 0 val } end