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) { |
44 |
|
* protected void compute() { |
45 |
|
* Fib f = this; |
46 |
|
* while (f.n > 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(); |