Package Summary Overview Summary

### class:TransferQueue [NONE]
Type Parameters: `E` - the type of elements held in this queue All Superinterfaces: `BlockingQueue<E>`, `Collection<E>`, `Iterable<E>`, `Queue<E>` All Known Implementing Classes: `LinkedTransferQueue` public interface TransferQueue<E> extends BlockingQueue<E> A `BlockingQueue` in which producers may wait for consumers to receive elements. A `TransferQueue` may be useful for example in message passing applications in which producers sometimes (using method `transfer(E)`) await receipt of elements by consumers invoking `take` or `poll`, while at other times enqueue elements (via method `put`) without waiting for receipt. Non-blocking and time-out versions of `tryTransfer` are also available. A `TransferQueue` may also be queried, via `hasWaitingConsumer()`, whether there are any threads waiting for items, which is a converse analogy to a `peek` operation. Like other blocking queues, a `TransferQueue` may be capacity bounded. If so, an attempted transfer operation may initially block waiting for available space, and/or subsequently block waiting for reception by a consumer. Note that in a queue with zero capacity, such as `SynchronousQueue`, `put` and `transfer` are effectively synonymous. This interface is a member of the Java Collections Framework . Since: 1.7

### method:hasWaitingConsumer() [NONE]
### hasWaitingConsumer boolean hasWaitingConsumer() Returns `true` if there is at least one consumer waiting to receive an element via `BlockingQueue.take()` or timed `poll`. The return value represents a momentary state of affairs. Returns: `true` if there is at least one waiting consumer

### method:getWaitingConsumerCount() [NONE]
### getWaitingConsumerCount int getWaitingConsumerCount() Returns an estimate of the number of consumers waiting to receive elements via `BlockingQueue.take()` or timed `poll`. The return value is an approximation of a momentary state of affairs, that may be inaccurate if consumers have completed or given up waiting. The value may be useful for monitoring and heuristics, but not for synchronization control. Implementations of this method are likely to be noticeably slower than those for `hasWaitingConsumer()`. Returns: the number of consumers waiting to receive elements