11 |
|
import jsr166e.LongAdder; |
12 |
|
|
13 |
|
public class LongAdderDemo { |
14 |
< |
static final int INCS_PER_THREAD = 10000000; |
14 |
> |
static final int INCS_PER_THREAD = 10000000; |
15 |
|
static final int NCPU = Runtime.getRuntime().availableProcessors(); |
16 |
|
static final ExecutorService pool = Executors.newCachedThreadPool(); |
17 |
|
|
72 |
|
final Phaser phaser; |
73 |
|
final int incs; |
74 |
|
volatile long result; |
75 |
< |
AdderTask(LongAdder adder, Phaser phaser, int incs) { |
76 |
< |
this.adder = adder; |
75 |
> |
AdderTask(LongAdder adder, Phaser phaser, int incs) { |
76 |
> |
this.adder = adder; |
77 |
|
this.phaser = phaser; |
78 |
|
this.incs = incs; |
79 |
|
} |
94 |
|
final Phaser phaser; |
95 |
|
final int incs; |
96 |
|
volatile long result; |
97 |
< |
CasTask(AtomicLong adder, Phaser phaser, int incs) { |
98 |
< |
this.adder = adder; |
97 |
> |
CasTask(AtomicLong adder, Phaser phaser, int incs) { |
98 |
> |
this.adder = adder; |
99 |
|
this.phaser = phaser; |
100 |
|
this.incs = incs; |
101 |
|
} |
111 |
|
} |
112 |
|
} |
113 |
|
|
114 |
< |
} |
114 |
> |
} |