Java / Concurrent collections
Explain ArrayBlockingQueue in Java concurrency collections.
The ArrayBlockingQueue class implements the BlockingQueue interface. It is introduced in Java 1.5.
ArrayBlockingQueue is a bounded blocking queue backed by an array.
This queue orders elements FIFO (first-in-first-out). The head of the queue is that element that has been on the queue the longest time. The tail of the queue is that element that has been on the queue the shortest time. New elements are inserted at the tail of the queue, and the queue retrieval operations obtain elements at the head of the queue.
This class supports an optional fairness policy for ordering waiting producer and consumer threads. By default, this ordering is not guaranteed. However, a queue constructed with fairness set to true grants threads access in FIFO order. Fairness generally decreases throughput but reduces variability and avoids starvation.
More Related questions...