@Override
        public void close() {
            Objects.requireNonNull(byteBuffer, "Already released");
            if (byteBuffer.isDirect()) {
                try {
                    LOGGER.debug("Unmapping buffer {}", byteBuffer);
                    ByteBufferSupport.unmap(byteBuffer);
                } catch (final Exception e) {
                    LOGGER.error("Error releasing direct byte buffer", e);
                }
            }
            byteBuffer = null;
        }
Release the underlying {@link ByteBuffer} back to the pool. Once released,
the {@link ByteBuffer} cannot be used any more and you should not retain any
references to it.
stroom-bytebuffer/src/main/java/stroom/bytebuffer/impl6/ByteBufferPoolImpl7.java