def join(timeout = 5)
      while (worker = workers.first)
        if worker.join(timeout)
          # Worker thread is dead
          workers.shift
        else
          return false
        end
      end
      true
    end
def join(timeout = 5)
      while (worker = workers.first)
        if worker.join(timeout)
          # Worker thread is dead
          workers.shift
        else
          return false
        end
      end
      true
    end
Wait for all workers to stop.
 Return [true] if all workers stopped
 Return [false] on timeout