org.compass.core.util.backport.java.util.concurrent
Class SynchronousQueue.LifoWaitQueue

java.lang.Object
  extended by org.compass.core.util.backport.java.util.concurrent.SynchronousQueue.WaitQueue
      extended by org.compass.core.util.backport.java.util.concurrent.SynchronousQueue.LifoWaitQueue
All Implemented Interfaces:
Serializable
Enclosing class:
SynchronousQueue

static final class SynchronousQueue.LifoWaitQueue
extends SynchronousQueue.WaitQueue
implements Serializable

LIFO queue to hold waiting puts/takes.


Constructor Summary
SynchronousQueue.LifoWaitQueue()
           
 
Method Summary
(package private)  SynchronousQueue.Node deq()
          Removes and returns node, or null if empty.
(package private)  SynchronousQueue.Node enq(Object x)
          Creates, adds, and returns node for x.
(package private)  boolean shouldUnlink(SynchronousQueue.Node node)
          Returns true if a cancelled node might be on queue.
(package private)  void unlink(SynchronousQueue.Node node)
          Removes a cancelled node to avoid garbage retention.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SynchronousQueue.LifoWaitQueue

SynchronousQueue.LifoWaitQueue()
Method Detail

enq

SynchronousQueue.Node enq(Object x)
Description copied from class: SynchronousQueue.WaitQueue
Creates, adds, and returns node for x.

Specified by:
enq in class SynchronousQueue.WaitQueue

deq

SynchronousQueue.Node deq()
Description copied from class: SynchronousQueue.WaitQueue
Removes and returns node, or null if empty.

Specified by:
deq in class SynchronousQueue.WaitQueue

shouldUnlink

boolean shouldUnlink(SynchronousQueue.Node node)
Description copied from class: SynchronousQueue.WaitQueue
Returns true if a cancelled node might be on queue.

Specified by:
shouldUnlink in class SynchronousQueue.WaitQueue

unlink

void unlink(SynchronousQueue.Node node)
Description copied from class: SynchronousQueue.WaitQueue
Removes a cancelled node to avoid garbage retention.

Specified by:
unlink in class SynchronousQueue.WaitQueue


Copyright (c) 2004-2006 The Compass Project.