--- jsr166/src/jsr166y/LinkedTransferQueue.java 2009/07/29 02:17:02 1.31 +++ jsr166/src/jsr166y/LinkedTransferQueue.java 2009/07/29 02:19:56 1.32 @@ -114,6 +114,12 @@ public class LinkedTransferQueue exte this.isData = isData; } + // Unsafe mechanics + + private static final sun.misc.Unsafe UNSAFE = getUnsafe(); + private static final long nextOffset = + objectFieldOffset(UNSAFE, "next", Node.class); + final boolean casNext(Node cmp, Node val) { return UNSAFE.compareAndSwapObject(this, nextOffset, cmp, val); } @@ -122,12 +128,6 @@ public class LinkedTransferQueue exte UNSAFE.putOrderedObject(this, nextOffset, this); } - // Unsafe mechanics - - private static final sun.misc.Unsafe UNSAFE = getUnsafe(); - private static final long nextOffset = - objectFieldOffset(UNSAFE, "next", Node.class); - /** * Returns a sun.misc.Unsafe. Suitable for use in a 3rd party package. * Replace with a simple call to Unsafe.getUnsafe when integrating