--- jsr166/src/jsr166y/LinkedTransferQueue.java 2010/04/05 15:50:51 1.72 +++ jsr166/src/jsr166y/LinkedTransferQueue.java 2010/08/17 18:30:33 1.73 @@ -15,6 +15,7 @@ import java.util.Iterator; import java.util.NoSuchElementException; import java.util.Queue; import java.util.concurrent.locks.LockSupport; + /** * An unbounded {@link TransferQueue} based on linked nodes. * This queue orders elements FIFO (first-in-first-out) with respect @@ -422,7 +423,7 @@ public class LinkedTransferQueue exte } final boolean casItem(Object cmp, Object val) { - assert cmp == null || cmp.getClass() != Node.class; + // assert cmp == null || cmp.getClass() != Node.class; return UNSAFE.compareAndSwapObject(this, itemOffset, cmp, val); } @@ -446,7 +447,7 @@ public class LinkedTransferQueue exte /** * Sets item to self and waiter to null, to avoid garbage * retention after matching or cancelling. Uses relaxed writes - * bacause order is already constrained in the only calling + * because order is already constrained in the only calling * contexts: item is forgotten only after volatile/atomic * mechanics that extract items. Similarly, clearing waiter * follows either CAS or return from park (if ever parked; @@ -488,7 +489,7 @@ public class LinkedTransferQueue exte * Tries to artificially match a data node -- used by remove. */ final boolean tryMatchData() { - assert isData; + // assert isData; Object x = item; if (x != null && x != this && casItem(x, null)) { LockSupport.unpark(waiter); @@ -541,7 +542,7 @@ public class LinkedTransferQueue exte @SuppressWarnings("unchecked") static E cast(Object item) { - assert item == null || item.getClass() != Node.class; + // assert item == null || item.getClass() != Node.class; return (E) item; } @@ -656,7 +657,7 @@ public class LinkedTransferQueue exte for (;;) { Object item = s.item; if (item != e) { // matched - assert item != s; + // assert item != s; s.forgetContents(); // avoid garbage return this.cast(item); }