org.apache.commons.pool2.package.html Maven / Gradle / Ivy
Package Documentation for org.apache.commons.pool2
Object pooling API.
The org.apache.commons.pool2
package defines a simple
interface for a pool of object instances, and a handful of base
classes that may be useful when creating pool implementations.
The pool
package itself doesn't define a specific object
pooling implementation, but rather a contract that implementations may
support in order to be fully interchangeable.
The pool
package separates the way in which instances are
pooled from the way in which they are created, resulting in a pair of
interfaces:
- {@link org.apache.commons.pool2.ObjectPool ObjectPool}
-
defines a simple object pooling interface, with methods for
borrowing instances from and returning them to the pool.
- {@link org.apache.commons.pool2.PooledObjectFactory PooledObjectFactory}
-
defines lifecycle methods for object instances contained within a pool.
By associating a factory with a pool, the pool can create new object
instances as needed.
The pool
package also provides a keyed pool interface,
which pools instances of multiple types, accessed according to an
arbitrary key. See
{@link org.apache.commons.pool2.KeyedObjectPool KeyedObjectPool} and
{@link org.apache.commons.pool2.KeyedPooledObjectFactory
KeyedPooledObjectFactory}.