Class LinkedTransferQueue.QNode

java.lang.Object
java.util.concurrent.atomic.AtomicReference<Object>
com.google.code.yanf4j.util.LinkedTransferQueue.QNode
All Implemented Interfaces:
Serializable
Enclosing class:
LinkedTransferQueue<E>

private static final class LinkedTransferQueue.QNode extends AtomicReference<Object>
Node class for LinkedTransferQueue. Opportunistically subclasses from AtomicReference to represent item. Uses Object, not E, to allow setting item to "this" after use, to avoid garbage retention. Similarly, setting the next field to this is used as sentinel that node is off list.