class Concurrent::CyclicBarrier

def wait_for_wake_up(generation, timeout)

def wait_for_wake_up(generation, timeout)
  if wait_while_waiting(generation, timeout)
    generation.status == :fulfilled
  else
    generation.status = :broken
    @condition.broadcast
    false
  end
end