--- jsr166/src/test/loops/BinaryAsyncAction.java 2015/09/12 19:16:16 1.18 +++ jsr166/src/test/loops/BinaryAsyncAction.java 2015/09/14 16:47:43 1.20 @@ -57,11 +57,11 @@ import java.util.concurrent.atomic.*; * */ public abstract class BinaryAsyncAction extends ForkJoinTask { - private volatile int controlState; - - static final AtomicIntegerFieldUpdater controlStateUpdater = + private volatile int controlState; + + static final AtomicIntegerFieldUpdater controlStateUpdater = AtomicIntegerFieldUpdater.newUpdater(BinaryAsyncAction.class, "controlState"); - + /** * Parent to propagate completion; nulled after completion to * avoid retaining entire tree as garbage @@ -281,6 +281,4 @@ public abstract class BinaryAsyncAction protected final void decrementControlState() { controlStateUpdater.decrementAndGet(this); } - - }