Home / Class/ ConcurrentQueueChunkCache Class — netty Architecture

ConcurrentQueueChunkCache Class — netty Architecture

Architecture documentation for the ConcurrentQueueChunkCache class in AdaptivePoolingAllocator.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  938adf42_e2a2_8327_31b0_f4ff5165ce47["ConcurrentQueueChunkCache"]
  fee3fa6d_a7fb_30d6_ea34_49602c633a2c["AdaptivePoolingAllocator.java"]
  938adf42_e2a2_8327_31b0_f4ff5165ce47 -->|defined in| fee3fa6d_a7fb_30d6_ea34_49602c633a2c
  402939f3_dd4d_ad11_477e_bdc4ee5c0ad9["ConcurrentQueueChunkCache()"]
  938adf42_e2a2_8327_31b0_f4ff5165ce47 -->|method| 402939f3_dd4d_ad11_477e_bdc4ee5c0ad9
  cf3730c9_1042_a858_3557_b0e2bfc53f3d["Chunk()"]
  938adf42_e2a2_8327_31b0_f4ff5165ce47 -->|method| cf3730c9_1042_a858_3557_b0e2bfc53f3d
  feca76a1_135e_83be_6297_3ca41c7e00bd["offerChunk()"]
  938adf42_e2a2_8327_31b0_f4ff5165ce47 -->|method| feca76a1_135e_83be_6297_3ca41c7e00bd

Relationship Graph

Source Code

buffer/src/main/java/io/netty/buffer/AdaptivePoolingAllocator.java lines 524–554

    private static final class ConcurrentQueueChunkCache implements ChunkCache {
        private final Queue<Chunk> queue;

        private ConcurrentQueueChunkCache() {
            queue = createSharedChunkQueue();
        }

        @Override
        public Chunk pollChunk(int size) {
            int attemps = queue.size();
            for (int i = 0; i < attemps; i++) {
                Chunk chunk = queue.poll();
                if (chunk == null) {
                    return null;
                }
                if (chunk.hasUnprocessedFreelistEntries()) {
                    chunk.processFreelistEntries();
                }
                if (chunk.remainingCapacity() >= size) {
                    return chunk;
                }
                queue.offer(chunk);
            }
            return null;
        }

        @Override
        public boolean offerChunk(Chunk chunk) {
            return queue.offer(chunk);
        }
    }

Frequently Asked Questions

What is the ConcurrentQueueChunkCache class?
ConcurrentQueueChunkCache is a class in the netty codebase, defined in buffer/src/main/java/io/netty/buffer/AdaptivePoolingAllocator.java.
Where is ConcurrentQueueChunkCache defined?
ConcurrentQueueChunkCache is defined in buffer/src/main/java/io/netty/buffer/AdaptivePoolingAllocator.java at line 524.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free