code: public void join(long millis) throws InterruptedException {
      if (!shutdown) {
        throw new IllegalStateException("Cannot wait for active submit thread");
      }
      sched.awaitTermination(millis, TimeUnit.MILLISECONDS);
    }
docs: Continue running until all queued jobs have been submitted to the
  cluster.