--- old/src/share/classes/java/lang/ref/Reference.java 2013-07-01 13:38:57.186626366 +0200 +++ new/src/share/classes/java/lang/ref/Reference.java 2013-07-01 13:38:56.874626372 +0200 @@ -89,7 +89,7 @@ private T referent; /* Treated specially by GC */ - ReferenceQueue queue; + volatile ReferenceQueue queue; /* When active: NULL * pending: this @@ -225,9 +225,7 @@ * been enqueued */ public boolean isEnqueued() { - synchronized (this) { - return (this.next != null && this.queue == ReferenceQueue.ENQUEUED); - } + return (this.queue == ReferenceQueue.ENQUEUED); } /**