stormpot.Pool interface.
The things you actually want to pool must all implement the
stormpot.Poolable interface, and you must also provide an
implementation of the stormpot.Allocator interface as a factory to
create your pooled objects.
include::docs/usage.adoc[]
| Modifier and Type | Interface and Description |
|---|---|
| public interface | |
| public interface | Completion
A Completion represents some task that is going to be completed at some point in the future, or maybe already has completed. |
| public interface | Expiration<T extends Poolable>
The expiration is used to determine if a given slot has expired, or otherwise become invalid. |
| public interface | ManagedPool
This is the JMX management interface for Stormpot object pools. |
| public interface | MetricsRecorder
A MetricsRecorder implementation supplies the pool with the ability to record and report operational metrics. |
| public interface | |
| public interface | Reallocator<
any type that implements Poolable. T extends Poolable>Reallocators are a special kind of |
| public interface | Slot
A Slot represents a location in a Pool where objects can be allocated into, so that they can be claimed and released. |
| public interface | SlotInfo<
The type of Poolables that this Expiration is able to examine. T extends Poolable>An informative interface, used by |
| Modifier and Type | Class and Description |
|---|---|
| pack-priv abstract class | AllocationController<
The type of T extends Poolable>poolables to allocate or deallocate.An AllocationController implements the actual allocation and deallocation of objects in a pool. |
| pack-priv abstract class | |
| pack-priv class | |
| public class | BasePoolable
A basic implementation of the |
| pack-priv class | |
| pack-priv class | BlazePoolThreadLocalTap<
The poolable type. T extends Poolable>The claim method in this pool tap follows the same idea as the thread-local caching and TLR-claiming in the pool itself. |
| pack-priv class | |
| pack-priv class | |
| pack-priv abstract class | |
| pack-priv class | |
| pack-priv class | |
| pack-priv class | |
| pack-priv class | |
| pack-priv class | |
| pack-priv class | |
| pack-priv abstract class | |
| pack-priv abstract class | |
| pack-priv abstract class | |
| public abstract class | |
| public class | PoolBuilder<T extends Poolable>
The `PoolBuilder` collects information about how big a pool should be,
and how it should allocate objects, an so on, and finally acts as the
factory for building the pool instances themselves, with the
|
| pack-priv class | |
| pack-priv class | |
| public class | |
| public class | PoolException
The PoolException may be thrown by a pool implementation in a number of
circumstances:
* If claim is called and the pool needs to
|
| public abstract class | PoolTap<
the type of T extends Poolable>Poolable contained in the pool, and made
available via this pool tap, as determined by the
configured allocator.A PoolTap provides the API for accessing objects in a |
| pack-priv class | |
| pack-priv class | |
| pack-priv class | RefillPile<T extends Poolable>
A `RefillPile` can collect objects, in a concurrent and wait-free manner, before releasing them all to a queue. |
| pack-priv class | |
| pack-priv class | |
| pack-priv class | |
| pack-priv class | |
| pack-priv class | |
| public class | Timeout
A Timeout represents the maximum amount of time a caller is willing to wait for a blocking operation to complete. |
| pack-priv class | |
| pack-priv class | |
| pack-priv class |
| Modifier and Type | Enum and Description |
|---|---|
| pack-priv enum |