Package ej.sni
Class PoolOfReusableResources
- java.lang.Object
-
- ej.sni.PoolOfReusableResources
-
- Direct Known Subclasses:
PoolOfLimitedReusableResources
public abstract class PoolOfReusableResources extends Object
A pool of reusable resources. A buffer is reserved usingreserve()and released usingrelease(Object). Pool may have a maximum number of resources.
-
-
Constructor Summary
Constructors Constructor Description PoolOfReusableResources(int maxNbResources)Allocate a new pool of resources
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract ObjectnewResource()Allocate a new resourcevoidrelease(Object buffer)Objectreserve()Reserve a buffer.
-
-
-
Method Detail
-
reserve
public Object reserve()
Reserve a buffer. In case all resources are in use and the maximum number of resources is not reached, a new buffer is allocated. Otherwise this function blocks until a buffer is available- Returns:
- an array
-
release
public void release(Object buffer)
-
newResource
protected abstract Object newResource()
Allocate a new resource- Returns:
- the new allocated resource
-
-