code: public final V join() {
          int s;
          if ((s = doJoin() & DONE_MASK) != NORMAL)
              reportException(s);
          return getRawResult();
      }
docs: Returns the result of the computation when it {@link #isDone is
  done}.  This method differs from {@link #get()} in that
  abnormal completion results in {@code RuntimeException} or
  {@code Error}, not {@code ExecutionException}, and that
  interrupts of the calling thread do <em>not</em> cause the
  method to abruptly return by throwing {@code
  InterruptedException}.
  
  @return the computed result