ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/loops/BinaryAsyncAction.java
(Generate patch)

Comparing jsr166/src/test/loops/BinaryAsyncAction.java (file contents):
Revision 1.8 by jsr166, Sun Nov 25 21:37:28 2012 UTC vs.
Revision 1.9 by jsr166, Sun Nov 25 21:44:38 2012 UTC

# Line 27 | Line 27 | import java.util.concurrent.atomic.*;
27   *   Fib(int n) { this.n = n; }
28   *   protected void compute() {
29   *     if (n > 1) {
30 < *        linkAndForkSubtasks(new Fib(n-1), new Fib(n-2));
30 > *       linkAndForkSubtasks(new Fib(n-1), new Fib(n-2));
31   *     else {
32 < *        result = n; // fib(0)==0; fib(1)==1
33 < *        complete();
32 > *       result = n; // fib(0)==0; fib(1)==1
33 > *       complete();
34   *     }
35   *   }
36   *   protected void onComplete(BinaryAsyncAction x, BinaryAsyncAction y) {
# Line 44 | Line 44 | import java.util.concurrent.atomic.*;
44   *   protected void compute() {
45   *     Fib f = this;
46   *     while (f.n &gt; 1) {
47 < *        Fib left = new Fib(f.n - 1);
48 < *        Fib right = new Fib(f.n - 2);
49 < *        f.linkSubtasks(left, right);
50 < *        right.fork(); // fork right
51 < *        f = left;     // loop on left
47 > *       Fib left = new Fib(f.n - 1);
48 > *       Fib right = new Fib(f.n - 2);
49 > *       f.linkSubtasks(left, right);
50 > *       right.fork(); // fork right
51 > *       f = left;     // loop on left
52   *     }
53   *     f.result = f.n;
54   *     f.complete();

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines