Class: Wurk::Processor::Counter
- Inherits:
-
Object
- Object
- Wurk::Processor::Counter
- Defined in:
- lib/wurk/processor.rb
Overview
Thread-safe global counter. Heartbeat reads + resets these every beat to publish per-process stats.
Instance Method Summary collapse
- #incr(amount = 1) ⇒ Object
-
#initialize ⇒ Counter
constructor
A new instance of Counter.
- #reset ⇒ Object
Constructor Details
#initialize ⇒ Counter
Returns a new instance of Counter.
108 109 110 111 |
# File 'lib/wurk/processor.rb', line 108 def initialize @value = 0 @lock = ::Mutex.new end |
Instance Method Details
#incr(amount = 1) ⇒ Object
113 114 115 |
# File 'lib/wurk/processor.rb', line 113 def incr(amount = 1) @lock.synchronize { @value += amount } end |
#reset ⇒ Object
117 118 119 120 121 122 123 |
# File 'lib/wurk/processor.rb', line 117 def reset @lock.synchronize do val = @value @value = 0 val end end |