module Puma::QueueClose
Queue#close was added in Ruby 2.3. Add a simple implementation for earlier Ruby versions.
Public Instance Methods
close()
click to toggle source
# File lib/puma/queue_close.rb, line 8 def close num_waiting.times {push nil} @closed = true end
closed?()
click to toggle source
# File lib/puma/queue_close.rb, line 12 def closed? @closed ||= false end
pop(non_block=false)
click to toggle source
Calls superclass method
# File lib/puma/queue_close.rb, line 20 def pop(non_block=false) return nil if !non_block && closed? && empty? super end
push(object)
click to toggle source
Calls superclass method
# File lib/puma/queue_close.rb, line 15 def push(object) raise ClosedQueueError if closed? super end
Also aliased as: <<