@m_seki の

I like ruby tooから引っ越し

バリア同期?

http://d.hatena.ne.jp/troter/20070313/1173802900 - troterの日記 - [Ruby] マルチスレッド難しい

Threadを一つ使うとQueueでもこんな風に書けそう。

require 'thread'

class LocalBarrier
  def initialize(n)
    @done = Queue.new
    @keeper = begin_keeper(n)
  end

  def sync
    @done.push(true)
    @keeper.join
  end

  private
  def begin_keeper(n)
    Thread.start do
      n.times do
        @done.pop
      end
    end
  end
end