-
- All Known Implementing Classes:
ArrayByteBufferPool,LeakTrackingByteBufferPool,MappedByteBufferPool,MappedByteBufferPool.Tagged
public interface ByteBufferPoolA
ByteBufferpool.Acquired buffers may be
releasedbut they do not need to; if they are released, they may be recycled and reused, otherwise they will be garbage collected as usual.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classByteBufferPool.Bucketstatic classByteBufferPool.Lease
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.nio.ByteBufferacquire(int size, boolean direct)Requests aByteBufferof the given size.default java.nio.ByteBuffernewByteBuffer(int capacity, boolean direct)Creates a new ByteBuffer of the given capacity and the given directness.voidrelease(java.nio.ByteBuffer buffer)Returns aByteBuffer, usually obtained withacquire(int, boolean)(but not necessarily), making it available for recycling and reuse.
-
-
-
Method Detail
-
acquire
java.nio.ByteBuffer acquire(int size, boolean direct)Requests a
ByteBufferof the given size.The returned buffer may have a bigger capacity than the size being requested but it will have the limit set to the given size.
- Parameters:
size- the size of the bufferdirect- whether the buffer must be direct or not- Returns:
- the requested buffer
- See Also:
release(ByteBuffer)
-
release
void release(java.nio.ByteBuffer buffer)
Returns a
ByteBuffer, usually obtained withacquire(int, boolean)(but not necessarily), making it available for recycling and reuse.- Parameters:
buffer- the buffer to return- See Also:
acquire(int, boolean)
-
newByteBuffer
default java.nio.ByteBuffer newByteBuffer(int capacity, boolean direct)Creates a new ByteBuffer of the given capacity and the given directness.
- Parameters:
capacity- the ByteBuffer capacitydirect- the ByteBuffer directness- Returns:
- a newly allocated ByteBuffer
-
-