class Message::InMemoryQueue
Attributes
name[R]
Public Class Methods
new(name)
click to toggle source
# File lib/message/in_memory_queue.rb, line 6 def initialize(name) @name = name @queue = ::Queue.new end
Public Instance Methods
deq(size=1, &block)
click to toggle source
# File lib/message/in_memory_queue.rb, line 16 def deq(size=1, &block) if size == 1 __deq__(&block) else size.times { __deq__(&block) } end rescue ThreadError #no message in queue end
enq(msg)
click to toggle source
# File lib/message/in_memory_queue.rb, line 11 def enq(msg) @queue << msg end
Also aliased as: <<
size()
click to toggle source
# File lib/message/in_memory_queue.rb, line 26 def size @queue.size end
Private Instance Methods
__deq__() { |deq| ... }
click to toggle source
# File lib/message/in_memory_queue.rb, line 31 def __deq__(&block) if block_given? yield(@queue.deq(true)) else @queue.deq(true) end end