Module: Plushie::BoundedQueue
- Defined in:
- lib/plushie/bounded_queue.rb
Overview
Small wrapper around SizedQueue for runtime mailboxes.
Constant Summary collapse
- EVENT_CAPACITY =
1024- CONNECTION_CAPACITY =
1024- SESSION_CAPACITY =
256
Class Method Summary collapse
- .new(capacity = EVENT_CAPACITY) ⇒ Object
- .push(queue, item, timeout: nil) ⇒ Object
- .try_push(queue, item) ⇒ Object
Class Method Details
.new(capacity = EVENT_CAPACITY) ⇒ Object
12 13 14 |
# File 'lib/plushie/bounded_queue.rb', line 12 def new(capacity = EVENT_CAPACITY) SizedQueue.new(capacity) end |
.push(queue, item, timeout: nil) ⇒ Object
16 17 18 19 20 21 22 23 24 |
# File 'lib/plushie/bounded_queue.rb', line 16 def push(queue, item, timeout: nil) if timeout queue.push(item, false, timeout: timeout) else queue.push(item) end rescue ClosedQueueError nil end |
.try_push(queue, item) ⇒ Object
26 27 28 29 30 |
# File 'lib/plushie/bounded_queue.rb', line 26 def try_push(queue, item) queue.push(item, true) rescue ClosedQueueError, ThreadError nil end |