Class ConcurrentDequeRecycler<T>
- java.lang.Object
-
- org.elasticsearch.common.recycler.DequeRecycler<T>
-
- org.elasticsearch.common.recycler.ConcurrentDequeRecycler<T>
-
- All Implemented Interfaces:
Recycler<T>
public class ConcurrentDequeRecycler<T> extends DequeRecycler<T>
ARecycler
implementation based on a concurrentDeque
. This implementation is thread-safe.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.recycler.Recycler
Recycler.C<T>, Recycler.Factory<T>, Recycler.V<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected Recycler.C<T>
c
-
Constructor Summary
Constructors Constructor Description ConcurrentDequeRecycler(Recycler.C<T> c, int maxSize)
-
Method Summary
Modifier and Type Method Description protected void
afterRelease(boolean recycled)
Called after a release.protected boolean
beforeRelease()
Called before releasing an object, returns true if the object should be recycled and false otherwise.Recycler.V<T>
obtain()
-
-
-
Field Detail
-
c
protected final Recycler.C<T> c
-
-
Constructor Detail
-
ConcurrentDequeRecycler
public ConcurrentDequeRecycler(Recycler.C<T> c, int maxSize)
-
-
Method Detail
-
obtain
public Recycler.V<T> obtain()
-
beforeRelease
protected boolean beforeRelease()
Description copied from class:DequeRecycler
Called before releasing an object, returns true if the object should be recycled and false otherwise.- Overrides:
beforeRelease
in classDequeRecycler<T>
-
afterRelease
protected void afterRelease(boolean recycled)
Description copied from class:DequeRecycler
Called after a release.- Overrides:
afterRelease
in classDequeRecycler<T>
-
-