public abstract class WeakObjectPool<T,E extends Throwable> extends Object
getObject()
and (repool(Object)
. Objects are held through
weak references so even objects that are not repooled are subject to garbage collection.
Subclasses must implement the abstract createObject()
.
Internally, the pool is stored in a java.util.concurrent.LinkedBlockingDeque instance.
Modifier | Constructor | Description |
---|---|---|
protected |
WeakObjectPool() |
The lone constructor.
|
Modifier and Type | Method | Description |
---|---|---|
protected abstract T |
createObject() |
Called whenever a new pool object is desired; subclasses must implement.
|
T |
getObject() |
Subclasses can subclass to return a more specific type.
|
boolean |
repool(T obj) |
Adds the given object to the pool, provided that the object
was created by this pool.
|
protected abstract T createObject() throws E extends Throwable
public T getObject() throws E extends Throwable
public boolean repool(T obj)
obj
- the object to return to the poolCopyright © 2000–2018 The Apache Software Foundation. All rights reserved.