--- jsr166/src/test/loops/Fib.java 2010/09/20 20:42:37 1.2 +++ jsr166/src/test/loops/Fib.java 2015/09/12 18:59:49 1.9 @@ -1,7 +1,7 @@ /* * Written by Doug Lea with assistance from members of JCP JSR-166 * Expert Group and released to the public domain, as explained at - * http://creativecommons.org/licenses/publicdomain + * http://creativecommons.org/publicdomain/zero/1.0/ */ import java.util.concurrent.*; @@ -13,8 +13,7 @@ import java.util.concurrent.*; * fibonacci(0) = 0; * fibonacci(1) = 1. * - **/ - + */ public final class Fib extends RecursiveAction { // Performance-tuning constant: @@ -40,7 +39,7 @@ public final class Fib extends Recursive } for (int reps = 0; reps < 2; ++reps) { - ForkJoinPool g = procs == 0? new ForkJoinPool() : + ForkJoinPool g = (procs == 0) ? ForkJoinPool.commonPool() : new ForkJoinPool(procs); lastStealCount = g.getStealCount(); for (int i = 0; i < 20; ++i) { @@ -49,21 +48,17 @@ public final class Fib extends Recursive // Thread.sleep(100); } System.out.println(g); - g.shutdown(); - if (!g.awaitTermination(10, TimeUnit.SECONDS)) - throw new Error(); - g = null; + if (g != ForkJoinPool.commonPool()) + g.shutdown(); Thread.sleep(500); } } - /** for time conversion */ static final long NPS = (1000L * 1000 * 1000); static void test(ForkJoinPool g, int num) throws Exception { int ps = g.getParallelism(); - // g.setParallelism(ps); long start = System.nanoTime(); Fib f = new Fib(num); g.invoke(f); @@ -81,7 +76,6 @@ public final class Fib extends Recursive System.out.println(); } - // Initialized with argument; replaced with result int number; @@ -99,7 +93,6 @@ public final class Fib extends Recursive else { Fib f1 = new Fib(n - 1); Fib f2 = new Fib(n - 2); - // forkJoin(f1, f2); invokeAll(f1, f2); number = f1.number + f2.number; } @@ -117,4 +110,3 @@ public final class Fib extends Recursive } } -