Class QueuedPool<P>
- Type Parameters:
P
- the type of the pooled objects
- All Implemented Interfaces:
Pool<P>
A Queue
based implementation of Pool
.
Entries are taken out of the pool when they are acquired
and they are added back when they are released which means
acquired and reserved entries do not account for the
maxSize
calculation. This also means QueuedPool
is resistant to "release leaks".
This implementation does not support multiplexing.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.Pool
Pool.Entry<E>, Pool.Factory<F>, Pool.Wrapper<W>
-
Constructor Summary
-
Method Summary
-
Constructor Details
-
QueuedPool
public QueuedPool(int maxSize)
-
-
Method Details
-
reserve
Description copied from interface:Pool
Creates a new disabled slot into the pool.
The returned entry must ultimately have the
Pool.Entry.enable(Object, boolean)
method called or be removed viaPool.Entry.remove()
. -
acquire
Description copied from interface:Pool
Acquires an entry from the pool.
Only enabled entries will be returned from this method and their
Pool.Entry.enable(Object, boolean)
method must not be called. -
isTerminated
public boolean isTerminated()- Specified by:
isTerminated
in interfacePool<P>
- Returns:
- whether this
Pool
has been terminated - See Also:
-
terminate
Description copied from interface:Pool
Terminates this
Pool
.All the entries are marked as terminated and cannot be acquired nor released, but only removed.
The returned list of all entries may be iterated to perform additional operations on the pooled objects.
The pool cannot be used anymore after it is terminated.
-
size
public int size() -
getMaxSize
public int getMaxSize()- Specified by:
getMaxSize
in interfacePool<P>
- Returns:
- the maximum number of entries in this
Pool
-
stream
-
getReservedCount
public int getReservedCount()- Specified by:
getReservedCount
in interfacePool<P>
- Returns:
- the number of reserved entries
-
getIdleCount
public int getIdleCount()- Specified by:
getIdleCount
in interfacePool<P>
- Returns:
- the number of idle entries
-
getInUseCount
public int getInUseCount()- Specified by:
getInUseCount
in interfacePool<P>
- Returns:
- the number of in-use entries
-
getTerminatedCount
public int getTerminatedCount()- Specified by:
getTerminatedCount
in interfacePool<P>
- Returns:
- the number of terminated entries
-