BlockingMessageQueue() — netty Function Reference
Architecture documentation for the BlockingMessageQueue() function in Recycler.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 5eb06f14_17b7_4c00_13fc_67944070f068["BlockingMessageQueue()"] 97ffd903_aa9f_4bb1_fb52_3d8d31957095["BlockingMessageQueue"] 5eb06f14_17b7_4c00_13fc_67944070f068 -->|defined in| 97ffd903_aa9f_4bb1_fb52_3d8d31957095 488a82ea_db5d_5e9e_da1b_a8fbb2279f0a["size()"] 5eb06f14_17b7_4c00_13fc_67944070f068 -->|calls| 488a82ea_db5d_5e9e_da1b_a8fbb2279f0a style 5eb06f14_17b7_4c00_13fc_67944070f068 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
common/src/main/java/io/netty/util/Recycler.java lines 627–639
BlockingMessageQueue(int maxCapacity) {
this.maxCapacity = maxCapacity;
// This message passing queue is backed by an ArrayDeque instance,
// made thread-safe by synchronising on `this` BlockingMessageQueue instance.
// Why ArrayDeque?
// We use ArrayDeque instead of LinkedList or LinkedBlockingQueue because it's more space efficient.
// We use ArrayDeque instead of ArrayList because we need the queue APIs.
// We use ArrayDeque instead of ConcurrentLinkedQueue because CLQ is unbounded and has O(n) size().
// We use ArrayDeque instead of ArrayBlockingQueue because ABQ allocates its max capacity up-front,
// and these queues will usually have large capacities, in potentially great numbers (one per thread),
// but often only have comparatively few items in them.
deque = new ArrayDeque<T>();
}
Domain
Subdomains
Calls
Source
Frequently Asked Questions
What does BlockingMessageQueue() do?
BlockingMessageQueue() is a function in the netty codebase, defined in common/src/main/java/io/netty/util/Recycler.java.
Where is BlockingMessageQueue() defined?
BlockingMessageQueue() is defined in common/src/main/java/io/netty/util/Recycler.java at line 627.
What does BlockingMessageQueue() call?
BlockingMessageQueue() calls 1 function(s): size.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free