Package io.netty.buffer
Class AdaptivePoolingAllocator.Magazine
java.lang.Object
io.netty.buffer.AdaptivePoolingAllocator.AllocationStatistics
io.netty.buffer.AdaptivePoolingAllocator.Magazine
- Enclosing class:
AdaptivePoolingAllocator
private static final class AdaptivePoolingAllocator.Magazine
extends AdaptivePoolingAllocator.AllocationStatistics
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final StampedLockprivate AdaptivePoolingAllocator.Chunkprivate static final AdaptivePoolingAllocator.Chunkprivate static final AtomicReferenceFieldUpdater<AdaptivePoolingAllocator.Magazine, AdaptivePoolingAllocator.Chunk> private AdaptivePoolingAllocator.Chunkprivate final AtomicLongFields inherited from class io.netty.buffer.AdaptivePoolingAllocator.AllocationStatistics
localPrefChunkSize, parent, sharedPrefChunkSize -
Constructor Summary
ConstructorsConstructorDescriptionMagazine(AdaptivePoolingAllocator parent) Magazine(AdaptivePoolingAllocator parent, boolean shareable) -
Method Summary
Modifier and TypeMethodDescriptionprivate booleanallocate(int size, int sizeBucket, int maxCapacity, AdaptivePoolingAllocator.AdaptiveByteBuf buf) (package private) voidfree()private AdaptivePoolingAllocator.ChunknewChunkAllocation(int promptingSize) private voidprivate voidbooleantryAllocate(int size, int sizeBucket, int maxCapacity, AdaptivePoolingAllocator.AdaptiveByteBuf buf) (package private) booleanMethods inherited from class io.netty.buffer.AdaptivePoolingAllocator.AllocationStatistics
preferredChunkSize, recordAllocationSize, sizeBucket
-
Field Details
-
NEXT_IN_LINE
private static final AtomicReferenceFieldUpdater<AdaptivePoolingAllocator.Magazine,AdaptivePoolingAllocator.Chunk> NEXT_IN_LINE -
MAGAZINE_FREED
-
current
-
nextInLine
-
usedMemory
-
allocationLock
-
-
Constructor Details
-
Magazine
Magazine(AdaptivePoolingAllocator parent) -
Magazine
Magazine(AdaptivePoolingAllocator parent, boolean shareable)
-
-
Method Details
-
tryAllocate
public boolean tryAllocate(int size, int sizeBucket, int maxCapacity, AdaptivePoolingAllocator.AdaptiveByteBuf buf) -
allocate
private boolean allocate(int size, int sizeBucket, int maxCapacity, AdaptivePoolingAllocator.AdaptiveByteBuf buf) -
restoreMagazineFreed
private void restoreMagazineFreed() -
transferChunk
-
newChunkAllocation
-
trySetNextInLine
-
free
void free()
-