59 |
|
* RecursiveAction and CountedCompleter, but with all actions |
60 |
|
* executed in the common pool, generally implicitly via |
61 |
|
* checkInvoke. |
62 |
< |
*/ |
62 |
> |
*/ |
63 |
|
|
64 |
|
private void checkInvoke(ForkJoinTask a) { |
65 |
|
checkNotDone(a); |
889 |
|
} |
890 |
|
} |
891 |
|
|
892 |
< |
static abstract class CCF extends CountedCompleter { |
892 |
> |
abstract static class CCF extends CountedCompleter { |
893 |
|
int number; |
894 |
|
int rnumber; |
895 |
|
|
910 |
|
f.onCompletion(f); |
911 |
|
if ((p = f.getCompleter()) != null) |
912 |
|
p.tryComplete(); |
913 |
< |
else |
914 |
< |
f.quietlyComplete(); |
913 |
> |
else |
914 |
> |
f.quietlyComplete(); |
915 |
|
} |
916 |
|
} |
917 |
|
|
943 |
|
} |
944 |
|
|
945 |
|
// Version of CCF with forced failure in left completions |
946 |
< |
static abstract class FailingCCF extends CountedCompleter { |
946 |
> |
abstract static class FailingCCF extends CountedCompleter { |
947 |
|
int number; |
948 |
|
int rnumber; |
949 |
|
|
964 |
|
f.onCompletion(f); |
965 |
|
if ((p = f.getCompleter()) != null) |
966 |
|
p.tryComplete(); |
967 |
< |
else |
968 |
< |
f.quietlyComplete(); |
967 |
> |
else |
968 |
> |
f.quietlyComplete(); |
969 |
|
} |
970 |
|
} |
971 |
|
|
990 |
|
completeExceptionally(new FJException()); |
991 |
|
} |
992 |
|
} |
993 |
< |
|
993 |
> |
|
994 |
|
/** |
995 |
|
* invoke returns when task completes normally. |
996 |
|
* isCompletedAbnormally and isCancelled return false for normally |