Method: Libhoney::Queueing::SizedQueueWithTimeout#pop
- Defined in:
- lib/libhoney/queueing/sized_queue_with_timeout.rb
permalink #pop(timeout = :never, &timeout_policy) ⇒ Object Also known as: deq, shift
Pop something off the queue.
65 66 67 68 69 70 71 72 73 |
# File 'lib/libhoney/queueing/sized_queue_with_timeout.rb', line 65 def pop(timeout = :never, &timeout_policy) timeout_policy ||= -> { raise PopTimedOut } wait_for_condition(@item_available, -> { !empty? }, timeout, timeout_policy) do item = @items.shift @space_available.signal unless full? item end end |