/** * {@inheritDoc} */ @Override public ThreadLocalPool createThreadLocalPool() { return new HeapBufferThreadLocalPool(this); }
public void reset(final byte[] heap, final int offset, final int capacity) { if (pool != heap) { clearByteBufferCache(); pool = heap; } leftPos = rightPos = start = offset; end = offset + capacity; }
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
if (isLastAllocated(heapBuffer)) { rightPos -= heapBuffer.cap; } else if (isReleasableLeft(heapBuffer)) { leftPos += heapBuffer.cap; if (leftPos == rightPos) { } else if (wantReset(heapBuffer.cap)) { reset(heapBuffer);
@Override public void trim() { checkDispose(); final int sizeToReturn = cap - pos; if (sizeToReturn > 0) { final HeapBufferThreadLocalPool threadLocalCache = getHeapBufferThreadLocalPool(); if (threadLocalCache != null) { if (threadLocalCache.isLastAllocated(this)) { flip(); cap = lim; threadLocalCache.reduceLastAllocated(this); return; } else if (threadLocalCache.wantReset(sizeToReturn)) { flip(); cap = lim; threadLocalCache.reset(heap, offset + cap, sizeToReturn); return; } } } super.trim(); }
@Override public void trim() { checkDispose(); final int sizeToReturn = cap - pos; if (sizeToReturn > 0) { final HeapBufferThreadLocalPool threadLocalCache = getHeapBufferThreadLocalPool(); if (threadLocalCache != null) { if (threadLocalCache.isLastAllocated(this)) { flip(); cap = lim; threadLocalCache.reduceLastAllocated(this); return; } else if (threadLocalCache.wantReset(sizeToReturn)) { flip(); cap = lim; threadLocalCache.reset(heap, offset + cap, sizeToReturn); return; } } } super.trim(); }
@Override public void trim() { checkDispose(); final int sizeToReturn = cap - pos; if (sizeToReturn > 0) { final HeapBufferThreadLocalPool threadLocalCache = getHeapBufferThreadLocalPool(); if (threadLocalCache != null) { if (threadLocalCache.isLastAllocated(this)) { flip(); cap = lim; threadLocalCache.reduceLastAllocated(this); return; } else if (threadLocalCache.wantReset(sizeToReturn)) { flip(); cap = lim; threadLocalCache.reset(heap, offset + cap, sizeToReturn); return; } } } super.trim(); }
@Override public void trim() { checkDispose(); final int sizeToReturn = cap - pos; if (sizeToReturn > 0) { final HeapBufferThreadLocalPool threadLocalCache = getHeapBufferThreadLocalPool(); if (threadLocalCache != null) { if (threadLocalCache.isLastAllocated(this)) { flip(); cap = lim; threadLocalCache.reduceLastAllocated(this); return; } else if (threadLocalCache.wantReset(sizeToReturn)) { flip(); cap = lim; threadLocalCache.reset(heap, offset + cap, sizeToReturn); return; } } } super.trim(); }
@Override public void trim() { checkDispose(); final int sizeToReturn = cap - pos; if (sizeToReturn > 0) { final HeapBufferThreadLocalPool threadLocalCache = getHeapBufferThreadLocalPool(); if (threadLocalCache != null) { if (threadLocalCache.isLastAllocated(this)) { flip(); cap = lim; threadLocalCache.reduceLastAllocated(this); return; } else if (threadLocalCache.wantReset(sizeToReturn)) { flip(); cap = lim; threadLocalCache.reset(heap, offset + cap, sizeToReturn); return; } } } super.trim(); }
@Override public void trim() { checkDispose(); final int sizeToReturn = cap - pos; if (sizeToReturn > 0) { final HeapBufferThreadLocalPool threadLocalCache = getHeapBufferThreadLocalPool(); if (threadLocalCache != null) { if (threadLocalCache.isLastAllocated(this)) { flip(); cap = lim; threadLocalCache.reduceLastAllocated(this); return; } else if (threadLocalCache.wantReset(sizeToReturn)) { flip(); cap = lim; threadLocalCache.reset(heap, offset + cap, sizeToReturn); return; } } } super.trim(); }