Resets the internal bookkeeping state of this task, allowing a
subsequent {@code fork}. This method allows repeated reuse of
this task, but only if reuse occurs when this task has either
never been forked, or has been forked, then completed and all
outstanding joins of this task have also completed. Effects
under any other usage conditions are not guaranteed.
This method may be useful when executing
pre-constructed trees of subtasks in loops.
<p>Upon completion of this method, {@code isDone()} reports
{@code false}, and {@code getException()} reports {@code
null}. However, the value returned by {@code getRawResult} is
unaffected. To clear this value, you can invoke {@code
setRawResult(null)}.
Resets the internal bookkeeping state of this task, allowing a subsequent {@code fork}. This method allows repeated reuse of this task, but only if reuse occurs when this task has either never been forked, or has been forked, then completed and all outstanding joins of this task have also completed. Effects under any other usage conditions are not guaranteed. This method may be useful when executing pre-constructed trees of subtasks in loops.
<p>Upon completion of this method, {@code isDone()} reports {@code false}, and {@code getException()} reports {@code null}. However, the value returned by {@code getRawResult} is unaffected. To clear this value, you can invoke {@code setRawResult(null)}.