code: final int helpJoinOnce(WorkQueue joiner, ForkJoinTask<?> task) {
          int s;
          while ((s = task.status) >= 0 &&
                 (joiner.isEmpty() ?
                  tryHelpStealer(joiner, task) :
                  joiner.tryRemoveAndExec(task)) != 0)
              ;
          return s;
      }
docs: Stripped-down variant of awaitJoin used by timed joins. Tries
  to help join only while there is continuous progress. (Caller
  will then enter a timed wait.)
  
  @param joiner the joining worker
  @param task the task
  @return task status on exit