Package akka.util
Class BoundedBlockingQueue<E>
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractQueue<E>
-
- akka.util.BoundedBlockingQueue<E>
-
- All Implemented Interfaces:
java.lang.Iterable<E>,java.util.Collection<E>,java.util.concurrent.BlockingQueue<E>,java.util.Queue<E>
- Direct Known Subclasses:
BoundedPriorityMailbox.MessageQueue,BoundedStablePriorityMailbox.MessageQueue
public class BoundedBlockingQueue<E> extends java.util.AbstractQueue<E> implements java.util.concurrent.BlockingQueue<E>BoundedBlockingQueue wraps any Queue and turns the result into a BlockingQueue with a limited capacity. param: maxCapacity - the maximum capacity of this Queue, needs to be > 0 param: backing - the backing Queue
-
-
Constructor Summary
Constructors Constructor Description BoundedBlockingQueue(int maxCapacity, java.util.Queue<E> backing)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()booleancontains(java.lang.Object e)booleancontainsAll(java.util.Collection<?> c)protected java.util.concurrent.locks.ReentrantLockcreateLock()protected java.util.concurrent.locks.ConditioncreateNotEmptyCondition()protected java.util.concurrent.locks.ConditioncreateNotFullCondition()intdrainTo(java.util.Collection<? super E> c)intdrainTo(java.util.Collection<? super E> c, int maxElements)booleanisEmpty()java.util.Iterator<E>iterator()protected java.util.concurrent.locks.ReentrantLocklock()intmaxCapacity()protected java.util.concurrent.locks.ConditionnotEmpty()protected java.util.concurrent.locks.ConditionnotFull()booleanoffer(E e)booleanoffer(E e, long timeout, java.util.concurrent.TimeUnit unit)Epeek()Epoll()Epoll(long timeout, java.util.concurrent.TimeUnit unit)voidput(E e)intremainingCapacity()booleanremove(java.lang.Object e)booleanremoveAll(java.util.Collection<?> c)booleanretainAll(java.util.Collection<?> c)intsize()Etake()java.lang.Object[]toArray()<X> X[]toArray(X[] a)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Constructor Detail
-
BoundedBlockingQueue
public BoundedBlockingQueue(int maxCapacity, java.util.Queue<E> backing)
-
-
Method Detail
-
clear
public void clear()
-
contains
public boolean contains(java.lang.Object e)
-
containsAll
public boolean containsAll(java.util.Collection<?> c)
-
createLock
protected java.util.concurrent.locks.ReentrantLock createLock()
-
createNotEmptyCondition
protected java.util.concurrent.locks.Condition createNotEmptyCondition()
-
createNotFullCondition
protected java.util.concurrent.locks.Condition createNotFullCondition()
-
drainTo
public int drainTo(java.util.Collection<? super E> c)
- Specified by:
drainToin interfacejava.util.concurrent.BlockingQueue<E>
-
drainTo
public int drainTo(java.util.Collection<? super E> c, int maxElements)
- Specified by:
drainToin interfacejava.util.concurrent.BlockingQueue<E>
-
isEmpty
public boolean isEmpty()
-
iterator
public java.util.Iterator<E> iterator()
-
lock
protected java.util.concurrent.locks.ReentrantLock lock()
-
maxCapacity
public int maxCapacity()
-
notEmpty
protected java.util.concurrent.locks.Condition notEmpty()
-
notFull
protected java.util.concurrent.locks.Condition notFull()
-
offer
public boolean offer(E e)
-
offer
public boolean offer(E e, long timeout, java.util.concurrent.TimeUnit unit)
- Specified by:
offerin interfacejava.util.concurrent.BlockingQueue<E>
-
poll
public E poll(long timeout, java.util.concurrent.TimeUnit unit)
- Specified by:
pollin interfacejava.util.concurrent.BlockingQueue<E>
-
remainingCapacity
public int remainingCapacity()
- Specified by:
remainingCapacityin interfacejava.util.concurrent.BlockingQueue<E>
-
remove
public boolean remove(java.lang.Object e)
-
removeAll
public boolean removeAll(java.util.Collection<?> c)
-
retainAll
public boolean retainAll(java.util.Collection<?> c)
-
size
public int size()
-
toArray
public java.lang.Object[] toArray()
-
-