Sha256: 62f890910fd0ed7afb892b252e11d479eda644886a9d975ac18528ff252ca9ee
Contents?: true
Size: 477 Bytes
Versions: 1
Compression:
Stored size: 477 Bytes
Contents
require 'elaine/vertex' require 'elaine/worker' require 'elaine/coordinator' require 'singleton' class PostOffice include Singleton def initialize @mailboxes = Hash.new @mutex = Mutex.new end def deliver(to, msg) @mutex.synchronize do if @mailboxes[to] @mailboxes[to].push msg else @mailboxes[to] = [msg] end end end def read(box) @mutex.synchronize do @mailboxes.delete(box) || [] end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
elaine-0.0.3 | lib/elaine.rb |