LinkedTransferQueue
The TransferQueue interface is extending BlockingQueue and the only implementation of it in the JDK is LinkedTransferQueue. A TransferQueue comes in handy when a thread wants to hand over some data to another thread and needs to be sure that the other thread takes the element. This TransferQueue has a transfer() method that puts an element on the queue but does not return until some other thread calls remove(), thereby removing it (or calls poll(), thereby polling it). That way, the producing thread can be sure that the object put on the queue is in the hands of another processing thread and does not wait in the queue. The transfer() method also has a format, tryTransfer(), in which you can specify a timeout value. If ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access