940 |
|
UNSAFE.putOrderedObject(this, currentJoinOffset, joinMe); |
941 |
|
if (isTerminating()) // cancel if shutting down |
942 |
|
joinMe.cancelIgnoringExceptions(); |
943 |
< |
else { |
944 |
< |
if (sp != base) |
945 |
< |
localHelpJoinTask(joinMe); |
946 |
< |
if (joinMe.status >= 0) |
947 |
< |
pool.awaitJoin(joinMe, this, timed, nanos); |
948 |
< |
} |
943 |
> |
else |
944 |
> |
pool.awaitJoin(joinMe, this, timed, nanos); |
945 |
|
UNSAFE.putOrderedObject(this, currentJoinOffset, prevJoin); |
946 |
|
} |
947 |
|
|
948 |
|
/** |
949 |
|
* Run tasks in local queue until given task is done. |
950 |
+ |
* Not currently used because it complicates semantics. |
951 |
|
* |
952 |
|
* @param joinMe the task to join |
953 |
|
*/ |