@Override
        public int compareTo(Key other) {
            // This method is called many millions of times, hence no use of (Integer|Long).compareTo
            if (capacity < other.capacity) {
                return -1;
            } else if (capacity > other.capacity) {
                return 1;
            } else {
                if (insertionTime < other.insertionTime) {
                    return -1;
                } else if (insertionTime > other.insertionTime) {
                    return 1;
                } else {
                    return 0;
                }
            }
        }
Perform work with a {@link ByteBuffer} obtained from the pool. The {@link ByteBuffer}
must not be used outside of the work lambda.
stroom-bytebuffer/src/main/java/stroom/bytebuffer/ByteBufferPoolImpl3.java