class Concurrent::RingBuffer
def poll
-
(Object)- the first available value and removes it from the buffer. If buffer is empty returns nil
def poll result = @buffer[@first] @buffer[@first] = nil @first = (@first + 1) % @buffer.size @count -= 1 result end