ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/main/java/util/concurrent/ForkJoinPool.java
(Generate patch)

Comparing jsr166/src/main/java/util/concurrent/ForkJoinPool.java (file contents):
Revision 1.394 by dl, Fri Feb 5 15:20:03 2021 UTC vs.
Revision 1.395 by dl, Sat Feb 6 17:33:47 2021 UTC

# Line 2589 | Line 2589 | public class ForkJoinPool extends Abstra
2589       */
2590      public <T> T invoke(ForkJoinTask<T> task) {
2591          externalSubmit(task);
2592 <        return task.join();
2592 >        return task.joinForPoolInvoke(this);
2593      }
2594  
2595      /**
# Line 2681 | Line 2681 | public class ForkJoinPool extends Abstra
2681                  externalSubmit(f);
2682              }
2683              for (int i = futures.size() - 1; i >= 0; --i)
2684 <                ((ForkJoinTask<?>)futures.get(i)).quietlyJoin();
2684 >                ((ForkJoinTask<?>)futures.get(i)).tryJoinForPoolInvoke(this);
2685              return futures;
2686          } catch (Throwable t) {
2687              for (Future<T> e : futures)
# Line 2712 | Line 2712 | public class ForkJoinPool extends Abstra
2712                          ForkJoinTask.cancelIgnoringExceptions(f);
2713                      else {
2714                          try {
2715 <                            f.get(ns, TimeUnit.NANOSECONDS);
2715 >                            ((ForkJoinTask<T>)f).getForPoolInvoke(this, ns);
2716                          } catch (CancellationException | TimeoutException |
2717                                   ExecutionException ok) {
2718                          }
# Line 2818 | Line 2818 | public class ForkJoinPool extends Abstra
2818                  if (root.isDone())
2819                      break;
2820              }
2821 <            return root.get();
2821 >            return root.getForPoolInvoke(this);
2822          } finally {
2823              for (InvokeAnyTask<T> f : fs)
2824                  ForkJoinTask.cancelIgnoringExceptions(f);
# Line 2845 | Line 2845 | public class ForkJoinPool extends Abstra
2845                  if (root.isDone())
2846                      break;
2847              }
2848 <            return root.get(nanos, TimeUnit.NANOSECONDS);
2848 >            return root.getForPoolInvoke(this, nanos);
2849          } finally {
2850              for (InvokeAnyTask<T> f : fs)
2851                  ForkJoinTask.cancelIgnoringExceptions(f);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines