class BufferPool {

    public long availableMemory() {
        lock.lock();
        try {
            return this.availableMemory + this.free.size() * this.poolableSize;
        } finally {
            lock.unlock();
        }
    }

    public  BufferPool(long memory, int poolableSize, Metrics metrics, Time time, String metricGrpName);

}