Index
All Classes and Interfaces|All Packages|Serialized Form
A
- add(Object) - Method in class stormpot.internal.IdentityHashSet
-
Add the given object to the set.
- after(long, long, TimeUnit) - Static method in interface stormpot.Expiration
-
Construct a new Expiration that will invalidate objects that are older than the given lower bound, before they get older than the upper bound, in the given time unit.
- after(long, TimeUnit) - Static method in interface stormpot.Expiration
-
Construct a new Expiration that will invalidate objects that are older than the exact provided span of time in the given unit.
- allocate(Slot) - Method in interface stormpot.Allocator
-
Create a fresh new instance of T for the given slot.
- allocate(Slot) - Method in class stormpot.internal.ReallocatingAdaptor
- allocatedSize() - Method in class stormpot.internal.DirectAllocationController
- allocatedSize() - Method in class stormpot.internal.InlineAllocationController
- allocatedSize() - Method in class stormpot.internal.ThreadedAllocationController
- AllocationController<T> - Class in stormpot.internal
-
An AllocationController implements the actual allocation and deallocation of objects in a pool.
- AllocationController() - Constructor for class stormpot.internal.AllocationController
-
Default constructor.
- AllocationProcess - Class in stormpot.internal
-
The allocation process represent the means of building pool-specific
AllocationControllerinstances. - AllocationProcess(AllocationProcessMode) - Constructor for class stormpot.internal.AllocationProcess
-
Create an allocation process with the given operating mode.
- AllocationProcessMode - Enum Class in stormpot.internal
-
The operating mode of an
AllocationProcess. - Allocator<T> - Interface in stormpot
-
An Allocator is responsible for the creation and destruction of
Poolableobjects. - apply(Timeout, Function<T, R>) - Method in interface stormpot.PoolTap
-
Claim an object from the pool and apply the given function to it, returning the result and releasing the object back to the pool.
- await(Timeout) - Method in interface stormpot.Completion
-
Causes the current thread to wait until the completion is finished, or the thread is
interrupted, or the specified waiting time elapses. - await(Timeout) - Method in class stormpot.internal.StackCompletion
- await(Timeout) - Method in interface stormpot.internal.StackCompletion.OnAwait
-
Implements the blocking await of a
StackCompletion.
B
- BAllocThread<T> - Class in stormpot.internal
-
The dedicated background allocation process of a pool that operates in the
THREADEDmode. - BasePoolable - Class in stormpot
-
A basic implementation of the
Poolableinterface, which can be extended directly. - BasePoolable(Slot) - Constructor for class stormpot.BasePoolable
-
Build a
BasePoolablefor the given slot. - BlazePool<T> - Class in stormpot.internal
-
BlazePool is a highly optimised
Poolimplementation that consists of a queues of Poolable instances, the access to which is made faster with clever use of ThreadLocals. - BlazePool(PoolBuilderImpl<T>, AllocationProcess) - Constructor for class stormpot.internal.BlazePool
-
Construct a new BlazePool instance based on the given
PoolBuilder. - BlazePoolSingleThreadedTap<T> - Class in stormpot.internal
-
The claim method in this pool tap follows the same idea as the thread-local caching and TLR-claiming in the pool itself.
- BlazePoolSingleThreadedTap(BlazePool<T>, boolean) - Constructor for class stormpot.internal.BlazePoolSingleThreadedTap
-
Create a sequential (only usable by one thread at a time) tap for the given pool.
- BlazePoolThreadSafeTap<T> - Class in stormpot.internal
-
The claim method in this pool tap offers similar thread-safety and performance to the default thread-safe pool tap.
- BlazePoolThreadSafeTap(BlazePool<T>) - Constructor for class stormpot.internal.BlazePoolThreadSafeTap
-
Create a thread-safe tap for the given pool.
- BlazePoolVirtualThreadSafeTap<T> - Class in stormpot.internal
-
The claim method in this pool tap offers similar thread-safety and performance to the default thread-safe pool tap, but without the use of
ThreadLocal. - BlazePoolVirtualThreadSafeTap(BlazePool<T>, boolean) - Constructor for class stormpot.internal.BlazePoolVirtualThreadSafeTap
-
Create a virtual-thread-safe tap for the given pool.
- block() - Method in class stormpot.internal.StackCompletion
- BSlot<T> - Class in stormpot.internal
- BSlot(BlockingQueue<BSlot<T>>, AtomicLong) - Constructor for class stormpot.internal.BSlot
-
Create a new BSlot instance, which will return to the given live queue when released from a claim, and update the given counter when poisoned.
- BSlotCache<T> - Class in stormpot.internal
-
A reference to a
BSlot. - BSlotCache() - Constructor for class stormpot.internal.BSlotCache
-
Create a new, empty instance.
- BSlotCachePadded<T> - Class in stormpot.internal
-
A reference to a
BSlot, with extra padding to keep the pointer on its own cache line. - BSlotCachePadded() - Constructor for class stormpot.internal.BSlotCachePadded
-
Create a new, empty instance.
- BSlotPadded<T> - Class in stormpot.internal
-
A
BSlottype with extra padding to ensure each slot is on their own CPU cache line. - BSlotPadded(BlockingQueue<BSlot<T>>, AtomicLong) - Constructor for class stormpot.internal.BSlotPadded
-
Create a new BSlot instance, which will return to the given live queue when released from a claim, and update the given counter when poisoned.
- build() - Method in class stormpot.internal.PoolBuilderImpl
- build() - Method in interface stormpot.PoolBuilder
-
Build a
Poolinstance based on the collected configuration.
C
- claim(Timeout) - Method in class stormpot.internal.BlazePool
- claim(Timeout) - Method in class stormpot.internal.BlazePoolSingleThreadedTap
- claim(Timeout) - Method in class stormpot.internal.BlazePoolThreadSafeTap
- claim(Timeout) - Method in class stormpot.internal.BlazePoolVirtualThreadSafeTap
- claim(Timeout) - Method in interface stormpot.PoolTap
-
Claim the exclusive rights until released, to an object in the pool.
- claim2dead() - Method in class stormpot.internal.BSlot
-
Transition this slot from claimed to dead.
- claimTlr2live() - Method in class stormpot.internal.BSlot
-
Transition this slot from thread-locally claimed, to live.
- clone() - Method in class stormpot.internal.PoolBuilderImpl
- clone() - Method in interface stormpot.PoolBuilder
-
Returns a shallow copy of this
PoolBuilderobject. - close() - Method in class stormpot.Pooled
-
PooledimplementsAutoCloseableas a convenient way to release claimed objects back to the pool, using the try-with-resources syntax. - complete() - Method in class stormpot.internal.StackCompletion
-
Complete this completion and notify all waiters and subscribers.
- Completion - Interface in stormpot
-
A Completion represents some task that is going to be completed at some point in the future, or maybe already has completed.
- countLeakedObjects() - Method in class stormpot.internal.PreciseLeakDetector
-
Compute a count of the leaked objects that this detector has detected.
- countLeakedObjects() - Method in class stormpot.internal.ThreadedAllocationController
D
- dead2live() - Method in class stormpot.internal.BSlot
-
Transition this slot from dead to live.
- deallocate(T) - Method in interface stormpot.Allocator
-
Deallocate, if applicable, the given Poolable and free any resources associated with it.
- deallocate(T) - Method in class stormpot.internal.ReallocatingAdaptor
- DEFAULTS - Static variable in class stormpot.internal.PoolBuilderImpl
-
Mapping of
AllocationProcessModeto the pool builder default settings. - direct() - Static method in class stormpot.internal.AllocationProcess
-
Create an allocation process where all the pooled objects are given up-front.
- DIRECT - Enum constant in enum class stormpot.internal.AllocationProcessMode
-
The operating mode of
AllocationProcess.direct(). - DirectAllocationController<T> - Class in stormpot.internal
-
The
AllocationControllerthat implements theDIRECTmode.
E
- elapsed(long) - Static method in class stormpot.internal.NanoClock
-
Compute the number of nanoseconds passed since the given start time.
- equals(Object) - Method in record class stormpot.internal.PoolBuilderPermissions
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in class stormpot.Timeout
-
Timeouts of equivalent duration are equal, even if they were constructed with different units.
- every(long, long, TimeUnit) - Method in interface stormpot.Expiration
-
Construct a new Expiration that is composed of a time-based expiration and this one, such that this expiration is only consulted at most once within a time period based on the given
fromTimeandtoTimebrackets. - every(long, TimeUnit) - Method in interface stormpot.Expiration
-
Construct a new Expiration that is composed of a time-based expiration and this one, such that this expiration is only consulted at most once within the given time period.
- EveryExpiration<T> - Class in stormpot.internal
-
The implementation of the
Expiration.every(long, TimeUnit)andExpiration.every(long, long, TimeUnit)expiration combinators. - EveryExpiration(Expiration<T>, long, long, TimeUnit) - Constructor for class stormpot.internal.EveryExpiration
-
Create an instance of the combinator with the given configuration.
- Expiration<T> - Interface in stormpot
-
The expiration is used to determine if a given slot has expired, or otherwise become invalid.
- expire() - Method in class stormpot.BasePoolable
-
Explicitly expire this object, such that it will not be claimed again once it is released.
- expire(Poolable) - Method in class stormpot.internal.BSlot
- expire(Poolable) - Method in interface stormpot.Slot
-
Mark the object represented by this slot as expired.
F
- from(CompletionStage<?>) - Static method in interface stormpot.Completion
-
Translate the given
CompletionStageinto a StormpotCompletion. - from(Consumer<Runnable>) - Static method in interface stormpot.Completion
-
Create a completion using the given callback handler.
- from(Allocator<T>) - Static method in interface stormpot.Pool
-
Get a
PoolBuilderbased on the givenAllocatororReallocator, which can then in turn be used to build aPoolinstance with the desired configuration. - fromInline(Allocator<T>) - Static method in interface stormpot.Pool
-
Get a
PoolBuilderbased on the givenAllocatororReallocator, which can then in turn be used to build aPooloperating in the inline mode, with the desired configuration. - fromThreaded(Allocator<T>) - Static method in interface stormpot.Pool
-
Get a
PoolBuilderbased on the givenAllocatororReallocator, which can then in turn be used to build a threadedPoolinstance with the desired configuration.
G
- getAdaptedReallocator() - Method in class stormpot.internal.PoolBuilderImpl
-
Get a
Reallocatorfrom this pool builder, possibly by adapting the configuredAllocator. - getAgeMillis() - Method in class stormpot.internal.BSlot
- getAgeMillis() - Method in interface stormpot.SlotInfo
-
Get the approximate number of milliseconds that have transpired since the object was allocated.
- getAllocationCount() - Method in class stormpot.internal.BlazePool
- getAllocationCount() - Method in class stormpot.internal.ThreadedAllocationController
- getAllocationCount() - Method in interface stormpot.ManagedPool
-
Return the number of objects the pool has allocated since it was created.
- getAllocationFailureLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
- getAllocationFailureLatencyPercentile(double) - Method in interface stormpot.ManagedPool
-
Get the approximate latency value, in milliseconds, for failed allocation latencies within the given percentile/quantile of what has been recorded so far.
- getAllocationFailureLatencyPercentile(double) - Method in interface stormpot.MetricsRecorder
-
Get the approximate latency value, in milliseconds, for failed allocation latencies within the given percentile/quantile of what has been recorded so far.
- getAllocationLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
- getAllocationLatencyPercentile(double) - Method in interface stormpot.ManagedPool
-
Get the approximate Poolable object allocation latency value, in milliseconds, of the given percentile/quantile of the values recorded so far.
- getAllocationLatencyPercentile(double) - Method in interface stormpot.MetricsRecorder
-
Get the approximate Poolable object allocation latency value, in milliseconds, of the given percentile/quantile of the values recorded so far.
- getAllocator() - Method in class stormpot.internal.PoolBuilderImpl
- getAllocator() - Method in interface stormpot.PoolBuilder
-
Get the configured
Allocatorinstance. - getBackgroundExpirationCheckDelay() - Method in class stormpot.internal.PoolBuilderImpl
- getBackgroundExpirationCheckDelay() - Method in interface stormpot.PoolBuilder
-
Return the default approximate delay, in milliseconds, between background maintenance tasks, such as the background expiration checks and retrying failed allocations.
- getBaseUnit() - Method in class stormpot.Timeout
-
Get the unit of precision for the underlying clock.
- getCreatedNanoTime() - Method in class stormpot.internal.BSlot
- getCreatedNanoTime() - Method in interface stormpot.SlotInfo
-
Get the approximate
System.nanoTime()timestamp for when the object was allocated. - getCurrentAllocatedCount() - Method in class stormpot.internal.BlazePool
- getCurrentAllocatedCount() - Method in interface stormpot.ManagedPool
-
Get the approximate number of currently allocated objects.
- getCurrentInUseCount() - Method in class stormpot.internal.BlazePool
- getCurrentInUseCount() - Method in interface stormpot.ManagedPool
-
Get the approximate number of objects currently in use.
- getDeallocationLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
- getDeallocationLatencyPercentile(double) - Method in interface stormpot.ManagedPool
-
Get the approximate latency value, in milliseconds, for deallocation latencies within the given percentile/quantile of what has been recorded so far.
- getDeallocationLatencyPercentile(double) - Method in interface stormpot.MetricsRecorder
-
Get the approximate latency value, in milliseconds, for deallocation latencies within the given percentile/quantile of what has been recorded so far.
- getExpiration() - Method in class stormpot.internal.PoolBuilderImpl
- getExpiration() - Method in interface stormpot.PoolBuilder
-
Get the configured
Expirationinstance. - getFailedAllocationCount() - Method in class stormpot.internal.BlazePool
- getFailedAllocationCount() - Method in class stormpot.internal.ThreadedAllocationController
- getFailedAllocationCount() - Method in interface stormpot.ManagedPool
-
Return the number of allocations that has failed, either because the allocator threw an exception or because it returned null, since the pool was created.
- getLeakedObjectsCount() - Method in class stormpot.internal.BlazePool
- getLeakedObjectsCount() - Method in interface stormpot.ManagedPool
-
If the pool is capable of precise object leak detection, this method will return the number of object leaks that have been detected, and prevented, since the pool was created.
- getManagedPool() - Method in class stormpot.internal.BlazePool
- getManagedPool() - Method in interface stormpot.Pool
-
Get the
ManagedPoolinstance that represents this pool. - getMetricsRecorder() - Method in class stormpot.internal.PoolBuilderImpl
- getMetricsRecorder() - Method in interface stormpot.PoolBuilder
-
Get the configured
MetricsRecorderinstance, ornullif none has been configured. - getMode() - Method in class stormpot.internal.AllocationProcess
-
Get the operating mode of this allocation process.
- getObject() - Method in class stormpot.Pooled
-
Get the pooled object.
- getObjectLifetimePercentile(double) - Method in class stormpot.internal.BlazePool
- getObjectLifetimePercentile(double) - Method in interface stormpot.ManagedPool
-
Get the approximate object lifetime, in milliseconds, for the given percentile/quantile.
- getObjectLifetimePercentile(double) - Method in interface stormpot.MetricsRecorder
-
Get the approximate object lifetime, in milliseconds, for the given percentile/quantile.
- getPoolable() - Method in class stormpot.internal.BSlot
- getPoolable() - Method in interface stormpot.SlotInfo
-
Get the Poolable object represented by this SlotInfo instance.
- getReallocationFailureLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
- getReallocationFailureLatencyPercentile(double) - Method in interface stormpot.ManagedPool
-
Get the approximate latency value, in milliseconds, for failed reallocation latencies within the given percentile/quantile of what has been recorded so far.
- getReallocationFailurePercentile(double) - Method in interface stormpot.MetricsRecorder
-
Get the approximate latency value, in milliseconds, for failed reallocation latencies within the given percentile/quantile of what has been recorded so far.
- getReallocationLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
- getReallocationLatencyPercentile(double) - Method in interface stormpot.ManagedPool
-
Get the approximate latency value, in milliseconds, for reallocation latencies within the given percentile/quantile of what has been recorded so far.
- getReallocationLatencyPercentile(double) - Method in interface stormpot.MetricsRecorder
-
Get the approximate latency value, in milliseconds, for reallocation latencies within the given percentile/quantile of what has been recorded so far.
- getReallocator() - Method in class stormpot.internal.PoolBuilderImpl
- getReallocator() - Method in interface stormpot.PoolBuilder
-
Get the configured
Allocatorinstance as aReallocator. - getSingleThreadedTap() - Method in class stormpot.internal.BlazePool
- getSingleThreadedTap() - Method in interface stormpot.Pool
-
Get a
PoolTapthat only support access by one thread at a time. - getSize() - Method in class stormpot.internal.PoolBuilderImpl
- getSize() - Method in interface stormpot.PoolBuilder
-
Get the currently configured size.
- getStamp() - Method in class stormpot.internal.BSlot
- getStamp() - Method in interface stormpot.SlotInfo
-
Get the stamp value that has been set on this SlotInfo, or 0 if none has been set since the Poolable was allocated.
- getTargetSize() - Method in class stormpot.internal.BlazePool
- getTargetSize() - Method in class stormpot.internal.ThreadedAllocationController
- getTargetSize() - Method in interface stormpot.ManagedPool
-
Get the current target size of the pool.
- getTargetSize() - Method in interface stormpot.Pool
-
Get the currently configured target size of the pool.
- getThreadFactory() - Method in class stormpot.internal.PoolBuilderImpl
- getThreadFactory() - Method in interface stormpot.PoolBuilder
-
Get the ThreadFactory that has been configured, and will be used to create the background allocation threads for the pools.
- getThreadSafeTap() - Method in class stormpot.internal.BlazePool
- getThreadSafeTap() - Method in interface stormpot.Pool
-
Get a thread-safe
PoolTapimplementation for this pool, which can be freely shared among multiple threads. - getTimeout() - Method in class stormpot.Timeout
-
Get the timeout value in terms of the
unit. - getTimeoutInBaseUnit() - Method in class stormpot.Timeout
-
Get the timeout value in terms of the
base unit. - getUnit() - Method in class stormpot.Timeout
-
Get the unit for the
timeout value. - getVirtualThreadSafeTap() - Method in class stormpot.internal.BlazePool
- getVirtualThreadSafeTap() - Method in interface stormpot.Pool
-
Get a thread-safe
PoolTapimplementation for this pool, which can be freely shared among multiple threads, including virtual threads.
H
- hasExpired(SlotInfo<? extends T>) - Method in interface stormpot.Expiration
-
Test whether the Slot and Poolable object, represented by the given
SlotInfoobject, is still valid, or if the pool should deallocate it and allocate a replacement. - hasExpired(SlotInfo<? extends T>) - Method in class stormpot.internal.EveryExpiration
- hasExpired(SlotInfo<? extends T>) - Method in class stormpot.internal.OrExpiration
-
Returns
trueif any of the givenExpirationhas expired. - hasExpired(SlotInfo<? extends T>) - Method in class stormpot.internal.TimeExpiration
- hasExpired(SlotInfo<? extends T>) - Method in class stormpot.internal.TimeSpreadExpiration
- hashCode() - Method in record class stormpot.internal.PoolBuilderPermissions
-
Returns a hash code value for this object.
- hashCode() - Method in class stormpot.Timeout
I
- IdentityHashSet - Class in stormpot.internal
-
Like
IdentityHashMap, but as a Set with no overhead for storing values. - IdentityHashSet() - Constructor for class stormpot.internal.IdentityHashSet
-
Create an empty identity hash set that uses
System.identityHashCode(Object)as the hash code for entries. - IdentityHashSet(ToIntFunction<Object>) - Constructor for class stormpot.internal.IdentityHashSet
-
Create an empty identity hash set that uses the given function as the hash code for entries.
- inline() - Static method in class stormpot.internal.AllocationProcess
-
Create an allocation process where all allocation and deallocation is performed in-line with the claim calls.
- INLINE - Enum constant in enum class stormpot.internal.AllocationProcessMode
-
The operating mode of
AllocationProcess.inline(). - InlineAllocationController<T> - Class in stormpot.internal
-
The
AllocationControllerimplementation for theINLINEmode. - inUse() - Method in class stormpot.internal.ThreadedAllocationController
- isBackgroundExpirationEnabled() - Method in class stormpot.internal.PoolBuilderImpl
- isBackgroundExpirationEnabled() - Method in interface stormpot.PoolBuilder
-
Return whether background expiration is enabled.
- isCompleted() - Method in interface stormpot.Completion
-
Immediately return whether the completion has completed or not.
- isCompleted() - Method in class stormpot.internal.StackCompletion
- isOptimizeForReducedMemoryUsage() - Method in class stormpot.internal.PoolBuilderImpl
- isOptimizeForReducedMemoryUsage() - Method in interface stormpot.PoolBuilder
-
Return whether Stormpot will prioritize minimizing its memory overhead over maximizing performance.
- isPreciseLeakDetectionEnabled() - Method in class stormpot.internal.PoolBuilderImpl
- isPreciseLeakDetectionEnabled() - Method in interface stormpot.PoolBuilder
-
Return whether precise object leak detection is enabled, which is the case by default.
- isReleasable() - Method in class stormpot.internal.StackCompletion
- isShutDown() - Method in class stormpot.internal.BlazePool
- isShutDown() - Method in interface stormpot.ManagedPool
-
Returns
trueif the shutdown process has been started on this pool,falseotherwise. - iterator() - Method in class stormpot.internal.IdentityHashSet
L
- leakCheck - Variable in class stormpot.internal.BSlot
-
A reference to the allocated object, used by the
PreciseLeakDetector. - live2claim() - Method in class stormpot.internal.BSlot
-
Attempt to transition this slot from live to claimed.
- live2claimTlr() - Method in class stormpot.internal.BSlot
-
Attempt to transition this slot from live to thread-locally claimed.
M
- ManagedPool - Interface in stormpot
-
This is the JMX management interface for Stormpot object pools.
- Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
- Section
- Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
- Section
- Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
- Section
- Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
- Section
- Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
- Section
- MetricsRecorder - Interface in stormpot
-
A MetricsRecorder implementation supplies the pool with the ability to record and report operational metrics.
N
- NanoClock - Class in stormpot.internal
-
Convenience functions for operating on relative nanosecond time spans.
- nanoTime() - Static method in class stormpot.internal.NanoClock
-
Equivalent of
System.nanoTime(). - never() - Static method in interface stormpot.Expiration
-
Construct a new Expiration that never invalidates any objects.
O
- obj - Variable in class stormpot.internal.BSlot
-
The object being pooled.
- object - Variable in class stormpot.Pooled
-
Deprecated.
- of(T...) - Static method in interface stormpot.Pool
-
Build a
Poolinstance that pools the given set of objects. - offerDeadSlot(BSlot<T>) - Method in class stormpot.internal.ThreadedAllocationController
- or(Expiration<T>) - Method in interface stormpot.Expiration
-
Construct a new Expiration that will invalidate objects if either this, or the given expiration, considers an object expired.
- OrExpiration<T> - Class in stormpot.internal
-
Provides a way to compose
Expirations. - OrExpiration(Expiration<T>, Expiration<T>) - Constructor for class stormpot.internal.OrExpiration
-
Create a new instance with the given two expirations.
P
- PERMISSIONS - Static variable in class stormpot.internal.PoolBuilderImpl
-
Mapping of
AllocationProcessModeto the pool builder permissions, deciding what settings can be changed. - poison - Variable in class stormpot.internal.BSlot
-
Any exception encountered when trying to allocate an object for this slot.
- PoisonException - Exception Class in stormpot.internal
-
Exception type used to mark poison conditions on slots or in the pool.
- PoisonException(String) - Constructor for exception class stormpot.internal.PoisonException
-
Create a new exception with the given message.
- Pool<T> - Interface in stormpot
-
A Pool is a self-renewable set of objects from which one can claim exclusive access to elements, until they are released back into the pool.
- Poolable - Interface in stormpot
-
Objects contained in a
Poolmust implement the Poolable interface and adhere to its contract. - PoolBuilder<T> - Interface in stormpot
-
The
PoolBuildercollects information about how big a pool should be, and how it should allocate objects, and so on, and finally acts as the factory for building the pool instances themselves, with thePoolBuilder.build()method. - PoolBuilderDefaults - Class in stormpot.internal
-
Container of default, initial settings for a
PoolBuilder. - PoolBuilderImpl<T> - Class in stormpot.internal
-
The
PoolBuilderimplementation. - PoolBuilderImpl(AllocationProcess, Allocator<T>) - Constructor for class stormpot.internal.PoolBuilderImpl
-
Build a new empty
PoolBuilderobject. - PoolBuilderPermissions - Record Class in stormpot.internal
-
A holder of permissions, deciding what
PoolBuildersettings are allowed to be changed. - PoolBuilderPermissions(boolean, boolean, boolean, boolean, boolean) - Constructor for record class stormpot.internal.PoolBuilderPermissions
-
Creates an instance of a
PoolBuilderPermissionsrecord class. - Pooled<T> - Class in stormpot
-
A reference to a pooled object.
- Pooled(Slot, T) - Constructor for class stormpot.Pooled
-
Create a pooled object for the given slot and object to be pooled.
- PoolException - Exception Class in stormpot
-
The PoolException may be thrown by a pool implementation in a number of circumstances: If claim is called and the pool needs to
allocatea new object, but the allocation fails by returningnullor throwing an exception. Likewise if theReallocator.reallocate(Slot, Poolable)method returnnullor throw an exception. If theSlot.release(Poolable)method is misused, and the pool is able to detect this. If theexpiration checkthrows an exception. - PoolException(String) - Constructor for exception class stormpot.PoolException
-
Construct a new PoolException with the given message.
- PoolException(String, Throwable) - Constructor for exception class stormpot.PoolException
-
Construct a new PoolException with the given message and cause.
- PoolTap<T> - Interface in stormpot
-
A PoolTap provides the API for accessing objects in a
Pool. - pop() - Method in class stormpot.internal.RefillPile
-
Remove a slot from the pile, if there is any.
- PreciseLeakDetector - Class in stormpot.internal
-
Leak detector, used to detect if objects allocated by the pool get garbage collected, without first being deallocated by the pool.
- PreciseLeakDetector() - Constructor for class stormpot.internal.PreciseLeakDetector
-
Create a new instance.
- propagateTo(StackCompletion) - Method in class stormpot.internal.StackCompletion
-
Complete the given completion when this completion completes.
- push(BSlot<T>) - Method in class stormpot.internal.RefillPile
-
Push the given slot onto the stack.
R
- reallocate(Slot, T) - Method in class stormpot.internal.ReallocatingAdaptor
- reallocate(Slot, T) - Method in interface stormpot.Reallocator
-
Possibly reallocate the given instance of T for the given slot, and return it if the reallocation was successful, or a fresh replacement if the instance could not be reallocated.
- ReallocatingAdaptor<T> - Class in stormpot.internal
-
An adaptor that implements
Reallocatorin terms of a givenAllocator. - ReallocatingAdaptor(Allocator<T>) - Constructor for class stormpot.internal.ReallocatingAdaptor
-
Adapt the given
Allocatorinto aReallocator. - Reallocator<T> - Interface in stormpot
- recordAllocationFailureLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
-
Record a latency sample of a failed allocation, in milliseconds.
- recordAllocationLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
-
Record a latency sample of a successful allocation, in milliseconds.
- recordDeallocationLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
-
Record a latency sample of a deallocation, in milliseconds.
- recordObjectLifetimeSampleMillis(long) - Method in interface stormpot.MetricsRecorder
-
Record an object lifetime sample, in milliseconds.
- recordReallocationFailureLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
-
Record a latency sample of a failed reallocation, in milliseconds.
- recordReallocationLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
-
Record a latency sample of a successful reallocation, in milliseconds.
- refill() - Method in class stormpot.internal.RefillPile
-
Refill the target queue with all the slots that have been pushed onto this stack.
- RefillPile<T> - Class in stormpot.internal
-
A
RefillPilecan collect objects, in a concurrent and wait-free manner, before releasing them all to a queue. - RefillPile(BlockingQueue<BSlot<T>>) - Constructor for class stormpot.internal.RefillPile
-
Create a refill pile that will refill into the given queue.
- RefillSlot<T> - Class in stormpot.internal
-
The node type of
RefillPile. - register(BSlot<?>) - Method in class stormpot.internal.PreciseLeakDetector
-
Register the given slot and its contained object with the detector.
- release() - Method in class stormpot.BasePoolable
- release() - Method in interface stormpot.Poolable
-
Release this Poolable object back into the pool from where it came, so that others can claim it, or the pool deallocate it if it has expired.
- release(Poolable) - Method in class stormpot.internal.BSlot
- release(Poolable) - Method in interface stormpot.Slot
-
Signal to the pool that the currently claimed object in this slot has been released.
- remove(Object) - Method in class stormpot.internal.IdentityHashSet
-
Remove the given object from the set.
- run() - Method in class stormpot.internal.BAllocThread
S
- setAllocator() - Method in record class stormpot.internal.PoolBuilderPermissions
-
Returns the value of the
setAllocatorrecord component. - setAllocator(Allocator<X>) - Method in class stormpot.internal.PoolBuilderImpl
- setAllocator(Allocator<X>) - Method in interface stormpot.PoolBuilder
-
Set the
AllocatororReallocatorto use for the pools we want to configure. - setBackgroundExpiration() - Method in record class stormpot.internal.PoolBuilderPermissions
-
Returns the value of the
setBackgroundExpirationrecord component. - setBackgroundExpirationCheckDelay(int) - Method in class stormpot.internal.PoolBuilderImpl
- setBackgroundExpirationCheckDelay(int) - Method in interface stormpot.PoolBuilder
-
Set the approximate delay, in milliseconds, between background maintenance tasks.
- setBackgroundExpirationEnabled(boolean) - Method in class stormpot.internal.PoolBuilderImpl
- setBackgroundExpirationEnabled(boolean) - Method in interface stormpot.PoolBuilder
-
Enable or disable background object expiration checking.
- setExpiration() - Method in record class stormpot.internal.PoolBuilderPermissions
-
Returns the value of the
setExpirationrecord component. - setExpiration(Expiration<? super T>) - Method in class stormpot.internal.PoolBuilderImpl
- setExpiration(Expiration<? super T>) - Method in interface stormpot.PoolBuilder
-
Set the
Expirationto use for the pools we want to configure. - setMetricsRecorder(MetricsRecorder) - Method in class stormpot.internal.PoolBuilderImpl
- setMetricsRecorder(MetricsRecorder) - Method in interface stormpot.PoolBuilder
-
Set the
MetricsRecorderto use for the pools we want to configure. - setOptimizeForReducedMemoryUsage(boolean) - Method in class stormpot.internal.PoolBuilderImpl
- setOptimizeForReducedMemoryUsage(boolean) - Method in interface stormpot.PoolBuilder
-
Tell the pool to optimize for either low memory usage (when giving
true), or maximal performance (when givingfalse). - setPreciseLeakDetectionEnabled(boolean) - Method in class stormpot.internal.PoolBuilderImpl
- setPreciseLeakDetectionEnabled(boolean) - Method in interface stormpot.PoolBuilder
-
Enable or disable precise object leak detection.
- setSize() - Method in record class stormpot.internal.PoolBuilderPermissions
-
Returns the value of the
setSizerecord component. - setSize(long) - Method in class stormpot.internal.PoolBuilderImpl
- setSize(long) - Method in interface stormpot.PoolBuilder
-
Set the size of the pool we are building.
- setStamp(long) - Method in class stormpot.internal.BSlot
- setStamp(long) - Method in interface stormpot.SlotInfo
-
Set the stamp value on this SlotInfo.
- setTargetSize(long) - Method in class stormpot.internal.BlazePool
- setTargetSize(long) - Method in class stormpot.internal.ThreadedAllocationController
- setTargetSize(long) - Method in interface stormpot.ManagedPool
-
Set a new target size of the pool.
- setTargetSize(long) - Method in interface stormpot.Pool
-
Set the target size for this pool.
- setThreadFactory() - Method in record class stormpot.internal.PoolBuilderPermissions
-
Returns the value of the
setThreadFactoryrecord component. - setThreadFactory(ThreadFactory) - Method in class stormpot.internal.PoolBuilderImpl
- setThreadFactory(ThreadFactory) - Method in interface stormpot.PoolBuilder
-
Set the ThreadFactory that the pools will use to create its background threads with.
- shutdown() - Method in class stormpot.internal.BlazePool
- shutdown() - Method in class stormpot.internal.ThreadedAllocationController
- shutdown() - Method in interface stormpot.Pool
-
Initiate the shutdown process on this pool, and return a
Completioninstance representing the shutdown procedure. - slot - Variable in class stormpot.BasePoolable
-
The
Slotrepresenting this objects place in the pool. - Slot - Interface in stormpot
-
A Slot represents a location in a Pool where objects can be allocated into, so that they can be claimed and released.
- SlotInfo<T> - Interface in stormpot
-
An informative interface, used by
Expirationinstances to determine if a slot has expired or is still invalid for claiming. - StackCompletion - Class in stormpot.internal
-
An implementation of
Completionbased on a wait-free stack. - StackCompletion() - Constructor for class stormpot.internal.StackCompletion
-
Create an unfinished completion with no
StackCompletion.OnAwaitcallback. - StackCompletion(boolean) - Constructor for class stormpot.internal.StackCompletion
-
Create a possibly finished completion with no
StackCompletion.OnAwaitcallback. - StackCompletion(StackCompletion.OnAwait) - Constructor for class stormpot.internal.StackCompletion
-
Create an unfinished completion with the given
StackCompletion.OnAwaitcallback. - StackCompletion.OnAwait - Interface in stormpot.internal
-
A callback that will be notified when threads block on a given completion.
- stormpot - module stormpot
-
Stormpot
- stormpot - package stormpot
-
Stormpot
- Stormpot - Search tag in module stormpot
- Section
- Stormpot - Search tag in package stormpot
- Section
- stormpot.internal - package stormpot.internal
- subscribe(Flow.Subscriber<? super Void>) - Method in class stormpot.internal.StackCompletion
- supply(Timeout, Consumer<T>) - Method in interface stormpot.PoolTap
-
Claim an object from the pool and supply it to the given consumer, and then release it back to the pool.
- switchAllocator(Allocator<T>) - Method in class stormpot.internal.BlazePool
- switchAllocator(Allocator<T>) - Method in interface stormpot.Pool
-
Initiate a switch from the current allocator to the given allocator.
T
- threaded() - Static method in class stormpot.internal.AllocationProcess
-
Create an allocation process that create pool controllers that use dedicated background threads.
- THREADED - Enum constant in enum class stormpot.internal.AllocationProcessMode
-
The operating mode of
AllocationProcess.threaded(). - ThreadedAllocationController<T> - Class in stormpot.internal
-
The
AllocationControllerimplementation for theTHREADEDmode. - TimeExpiration<T> - Class in stormpot.internal
-
This is a time based
Expiration. - TimeExpiration(long, TimeUnit) - Constructor for class stormpot.internal.TimeExpiration
-
Construct a new Expiration that will invalidate objects that are older than the provided span of time in the given unit.
- Timeout - Class in stormpot
-
A Timeout represents the maximum amount of time a caller is willing to wait for a blocking operation to complete.
- Timeout(long, TimeUnit) - Constructor for class stormpot.Timeout
-
Construct a new timeout with the given value and unit.
- Timeout(Duration) - Constructor for class stormpot.Timeout
-
Construct a new timeout with the given duration.
- TimeSpreadExpiration<T> - Class in stormpot.internal
-
This is the standard time based
Expiration. - TimeSpreadExpiration(long, long, TimeUnit) - Constructor for class stormpot.internal.TimeSpreadExpiration
-
Construct a new Expiration that will invalidate objects that are older than the given lower bound, before they get older than the upper bound, in the given time unit.
- toString() - Method in class stormpot.internal.BSlot
- toString() - Method in record class stormpot.internal.PoolBuilderPermissions
-
Returns a string representation of this record class.
- toString() - Method in class stormpot.internal.RefillPile
- toString() - Method in class stormpot.internal.RefillSlot
- toString() - Method in class stormpot.internal.TimeExpiration
- toString() - Method in class stormpot.internal.TimeSpreadExpiration
-
Produces a String representation of this TimeSpreadExpiration.
- toString() - Method in class stormpot.Pooled
- tryClaim() - Method in class stormpot.internal.BlazePool
- tryClaim() - Method in class stormpot.internal.BlazePoolSingleThreadedTap
- tryClaim() - Method in class stormpot.internal.BlazePoolThreadSafeTap
- tryClaim() - Method in class stormpot.internal.BlazePoolVirtualThreadSafeTap
- tryClaim() - Method in interface stormpot.PoolTap
-
Returns an object from the pool if the pool contains at least one valid object, otherwise returns
null.
U
- unregister(BSlot<?>) - Method in class stormpot.internal.PreciseLeakDetector
-
Deregister the given slot from the leak detector.
- unwrap() - Method in class stormpot.internal.ReallocatingAdaptor
-
Unwrap this adaptor to reveal the underlying
Allocator.
V
- valueOf(String) - Static method in enum class stormpot.internal.AllocationProcessMode
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class stormpot.internal.AllocationProcessMode
-
Returns an array containing the constants of this enum class, in the order they are declared.
All Classes and Interfaces|All Packages|Serialized Form
Pooled.getObject()instead.