class ThreadsWait

def join_nowait(*threads)


wait.
Specifies the threads that this object will wait for, but does not actually
def join_nowait(*threads)
  threads.flatten!
  @threads.concat threads
  for th in threads
    Thread.start(th) do |t|
      Thread.current.report_on_exception = false
      begin
        t.join
      ensure
        @wait_queue.push t
      end
    end
  end
end