All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.xnio.Pool Maven / Gradle / Ivy

There is a newer version: 3.8.16.Final
Show newest version

package org.xnio;

import java.nio.ByteBuffer;

/**
 * A generic pooled resource manager.
 *
 * @param  the resource type
 *
 * @apiviz.landmark
 *
 * @deprecated See {@link ByteBufferPool}.
 */
public interface Pool {

    /**
     * Allocate a resource from the pool.
     *
     * @return the resource
     */
    Pooled allocate();

    /**
     * A compatibility pool which maps to {@link ByteBufferPool#MEDIUM_HEAP}.
     */
    Pool HEAP = new Pool() {
        public Pooled allocate() {
            return Buffers.globalPooledWrapper(ByteBufferPool.MEDIUM_HEAP.allocate());
        }
    };

    /**
     * A compatibility pool which maps to {@link ByteBufferPool#MEDIUM_DIRECT}.
     */
    Pool DIRECT = new Pool() {
        public Pooled allocate() {
            return Buffers.globalPooledWrapper(ByteBufferPool.MEDIUM_DIRECT.allocate());
        }
    };
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy