Package org.eclipse.jetty.io
Class AbstractByteBufferPool
- java.lang.Object
-
- org.eclipse.jetty.io.AbstractByteBufferPool
-
- All Implemented Interfaces:
ByteBufferPool
- Direct Known Subclasses:
ArrayByteBufferPool,MappedByteBufferPool
@ManagedObject abstract class AbstractByteBufferPool extends java.lang.Object implements ByteBufferPool
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.io.ByteBufferPool
ByteBufferPool.Bucket, ByteBufferPool.Lease
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.concurrent.atomic.AtomicLong_directMemoryprivate int_factorprivate java.util.concurrent.atomic.AtomicLong_heapMemoryprivate long_maxDirectMemoryprivate long_maxHeapMemoryprivate int_maxQueueLength
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractByteBufferPool(int factor, int maxQueueLength, long maxHeapMemory, long maxDirectMemory)Creates a new ByteBufferPool with the given configuration.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidclear()protected voiddecrementMemory(java.nio.ByteBuffer buffer)Deprecated.protected intgetCapacityFactor()longgetDirectMemory()longgetHeapMemory()longgetMaxDirectMemory()longgetMaxHeapMemory()protected intgetMaxQueueLength()longgetMemory(boolean direct)protected voidincrementMemory(java.nio.ByteBuffer buffer)Deprecated.protected voidreleaseExcessMemory(boolean direct, java.util.function.Consumer<java.lang.Boolean> clearFn)(package private) java.util.function.IntConsumerupdateMemory(boolean direct)private voidupdateMemory(java.nio.ByteBuffer buffer, boolean addOrSub)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.jetty.io.ByteBufferPool
acquire, newByteBuffer, release, remove
-
-
-
-
Field Detail
-
_factor
private final int _factor
-
_maxQueueLength
private final int _maxQueueLength
-
_maxHeapMemory
private final long _maxHeapMemory
-
_maxDirectMemory
private final long _maxDirectMemory
-
_heapMemory
private final java.util.concurrent.atomic.AtomicLong _heapMemory
-
_directMemory
private final java.util.concurrent.atomic.AtomicLong _directMemory
-
-
Constructor Detail
-
AbstractByteBufferPool
protected AbstractByteBufferPool(int factor, int maxQueueLength, long maxHeapMemory, long maxDirectMemory)Creates a new ByteBufferPool with the given configuration.- Parameters:
factor- the capacity factormaxQueueLength- the maximum ByteBuffer queue lengthmaxHeapMemory- the max heap memory in bytes, -1 for unlimited memory or 0 to use default heuristic.maxDirectMemory- the max direct memory in bytes, -1 for unlimited memory or 0 to use default heuristic.
-
-
Method Detail
-
getCapacityFactor
protected int getCapacityFactor()
-
getMaxQueueLength
protected int getMaxQueueLength()
-
decrementMemory
@Deprecated protected void decrementMemory(java.nio.ByteBuffer buffer)
Deprecated.
-
incrementMemory
@Deprecated protected void incrementMemory(java.nio.ByteBuffer buffer)
Deprecated.
-
updateMemory
private void updateMemory(java.nio.ByteBuffer buffer, boolean addOrSub)
-
releaseExcessMemory
protected void releaseExcessMemory(boolean direct, java.util.function.Consumer<java.lang.Boolean> clearFn)
-
getDirectMemory
@ManagedAttribute("The bytes retained by direct ByteBuffers") public long getDirectMemory()
-
getHeapMemory
@ManagedAttribute("The bytes retained by heap ByteBuffers") public long getHeapMemory()
-
getMaxDirectMemory
@ManagedAttribute("The max num of bytes that can be retained from direct ByteBuffers") public long getMaxDirectMemory()
-
getMaxHeapMemory
@ManagedAttribute("The max num of bytes that can be retained from heap ByteBuffers") public long getMaxHeapMemory()
-
getMemory
public long getMemory(boolean direct)
-
updateMemory
java.util.function.IntConsumer updateMemory(boolean direct)
-
clear
@ManagedOperation(value="Clears this ByteBufferPool", impact="ACTION") public void clear()
-
-