com.google.common.collect
| Modifier and Type | Method and Description |
|---|---|
static <E> int |
drain(java.util.concurrent.BlockingQueue<E> q,
java.util.Collection<? super E> buffer,
int numElements,
long timeout,
java.util.concurrent.TimeUnit unit)
Drains the queue as
BlockingQueue.drainTo(Collection, int), but if the requested
numElements elements are not available, it will wait for them up to the specified
timeout. |
static <E> int |
drainUninterruptibly(java.util.concurrent.BlockingQueue<E> q,
java.util.Collection<? super E> buffer,
int numElements,
long timeout,
java.util.concurrent.TimeUnit unit)
Drains the queue as drain(BlockingQueue, Collection, int, long, TimeUnit),
but with a different behavior in case it is interrupted while waiting.
|
static <E> java.util.concurrent.ArrayBlockingQueue<E> |
newArrayBlockingQueue(int capacity)
Creates an empty
ArrayBlockingQueue instance. |
static <E> java.util.concurrent.ConcurrentLinkedQueue<E> |
newConcurrentLinkedQueue()
Creates an empty
ConcurrentLinkedQueue instance. |
static <E> java.util.concurrent.ConcurrentLinkedQueue<E> |
newConcurrentLinkedQueue(java.lang.Iterable<? extends E> elements)
Creates an
ConcurrentLinkedQueue instance containing the given elements. |
static <E> java.util.concurrent.LinkedBlockingQueue<E> |
newLinkedBlockingQueue()
Creates an empty
LinkedBlockingQueue instance. |
static <E> java.util.concurrent.LinkedBlockingQueue<E> |
newLinkedBlockingQueue(int capacity)
Creates a
LinkedBlockingQueue with the given (fixed) capacity. |
static <E> java.util.concurrent.LinkedBlockingQueue<E> |
newLinkedBlockingQueue(java.lang.Iterable<? extends E> elements)
Creates an
LinkedBlockingQueue instance containing the given elements. |
static <E> java.util.concurrent.PriorityBlockingQueue<E> |
newPriorityBlockingQueue()
Creates an empty
PriorityBlockingQueue instance. |
static <E> java.util.concurrent.PriorityBlockingQueue<E> |
newPriorityBlockingQueue(java.lang.Iterable<? extends E> elements)
Creates an
PriorityBlockingQueue instance containing the given elements. |
static <E> java.util.PriorityQueue<E> |
newPriorityQueue()
Creates an empty
PriorityQueue instance. |
static <E> java.util.PriorityQueue<E> |
newPriorityQueue(java.lang.Iterable<? extends E> elements)
Creates an
PriorityQueue instance containing the given elements. |
static <E> java.util.concurrent.SynchronousQueue<E> |
newSynchronousQueue()
Creates an empty
SynchronousQueue instance. |
public static <E> java.util.concurrent.ArrayBlockingQueue<E> newArrayBlockingQueue(int capacity)
ArrayBlockingQueue instance.ArrayBlockingQueuepublic static <E> java.util.concurrent.ConcurrentLinkedQueue<E> newConcurrentLinkedQueue()
ConcurrentLinkedQueue instance.ConcurrentLinkedQueuepublic static <E> java.util.concurrent.ConcurrentLinkedQueue<E> newConcurrentLinkedQueue(java.lang.Iterable<? extends E> elements)
ConcurrentLinkedQueue instance containing the given elements.elements - the elements that the queue should contain, in orderConcurrentLinkedQueue containing those elementspublic static <E> java.util.concurrent.LinkedBlockingQueue<E> newLinkedBlockingQueue()
LinkedBlockingQueue instance.LinkedBlockingQueuepublic static <E> java.util.concurrent.LinkedBlockingQueue<E> newLinkedBlockingQueue(int capacity)
LinkedBlockingQueue with the given (fixed) capacity.capacity - the capacity of this queueLinkedBlockingQueuejava.lang.IllegalArgumentException - if capacity is less than 1public static <E> java.util.concurrent.LinkedBlockingQueue<E> newLinkedBlockingQueue(java.lang.Iterable<? extends E> elements)
LinkedBlockingQueue instance containing the given elements.elements - the elements that the queue should contain, in orderLinkedBlockingQueue containing those elementspublic static <E> java.util.concurrent.PriorityBlockingQueue<E> newPriorityBlockingQueue()
PriorityBlockingQueue instance.PriorityBlockingQueuepublic static <E> java.util.concurrent.PriorityBlockingQueue<E> newPriorityBlockingQueue(java.lang.Iterable<? extends E> elements)
PriorityBlockingQueue instance containing the given elements.elements - the elements that the queue should contain, in orderPriorityBlockingQueue containing those elementspublic static <E> java.util.PriorityQueue<E> newPriorityQueue()
PriorityQueue instance.PriorityQueuepublic static <E> java.util.PriorityQueue<E> newPriorityQueue(java.lang.Iterable<? extends E> elements)
PriorityQueue instance containing the given elements.elements - the elements that the queue should contain, in orderPriorityQueue containing those elementspublic static <E> java.util.concurrent.SynchronousQueue<E> newSynchronousQueue()
SynchronousQueue instance.SynchronousQueuepublic static <E> int drain(java.util.concurrent.BlockingQueue<E> q,
java.util.Collection<? super E> buffer,
int numElements,
long timeout,
java.util.concurrent.TimeUnit unit)
throws java.lang.InterruptedException
BlockingQueue.drainTo(Collection, int), but if the requested
numElements elements are not available, it will wait for them up to the specified
timeout.q - the blocking queue to be drainedbuffer - where to add the transferred elementsnumElements - the number of elements to be waited fortimeout - how long to wait before giving up, in units of unitunit - a TimeUnit determining how to interpret the timeout parameterjava.lang.InterruptedException - if interrupted while waitingpublic static <E> int drainUninterruptibly(java.util.concurrent.BlockingQueue<E> q,
java.util.Collection<? super E> buffer,
int numElements,
long timeout,
java.util.concurrent.TimeUnit unit)
InterruptedException is thrown).q - the blocking queue to be drainedbuffer - where to add the transferred elementsnumElements - the number of elements to be waited fortimeout - how long to wait before giving up, in units of unitunit - a TimeUnit determining how to interpret the timeout parameter