Package com.landawn.abacus.pool
Class PoolFactory
java.lang.Object
com.landawn.abacus.pool.PoolFactory
A factory for creating Pool objects.
- Since:
- 0.8
- Author:
- Haiyang Li
-
Method Summary
Modifier and TypeMethodDescriptionstatic <K,
E extends Poolable>
KeyedObjectPool<K,E> createKeyedObjectPool
(int capacity) Creates a new Pool object.static <K,
E extends Poolable>
KeyedObjectPool<K,E> createKeyedObjectPool
(int capacity, long evictDelay) Creates a new Pool object.static <K,
E extends Poolable>
KeyedObjectPool<K,E> createKeyedObjectPool
(int capacity, long evictDelay, EvictionPolicy evictionPolicy) Creates a new Pool object.static <K,
E extends Poolable>
KeyedObjectPool<K,E> createKeyedObjectPool
(int capacity, long evictDelay, EvictionPolicy evictionPolicy, boolean autoBalance, float balanceFactor) Creates a new Pool object.static <K,
E extends Poolable>
KeyedObjectPool<K,E> createKeyedObjectPool
(int capacity, long evictDelay, EvictionPolicy evictionPolicy, boolean autoBalance, float balanceFactor, long maxMemorySize, KeyedObjectPool.MemoryMeasure<K, E> memoryMeasure) Creates a new Pool object.static <K,
E extends Poolable>
KeyedObjectPool<K,E> createKeyedObjectPool
(int capacity, long evictDelay, EvictionPolicy evictionPolicy, long maxMemorySize, KeyedObjectPool.MemoryMeasure<K, E> memoryMeasure) Creates a new Pool object.static <E extends Poolable>
ObjectPool<E>createObjectPool
(int capacity) Creates a new Pool object.static <E extends Poolable>
ObjectPool<E>createObjectPool
(int capacity, long evictDelay) Creates a new Pool object.static <E extends Poolable>
ObjectPool<E>createObjectPool
(int capacity, long evictDelay, EvictionPolicy evictionPolicy) Creates a new Pool object.static <E extends Poolable>
ObjectPool<E>createObjectPool
(int capacity, long evictDelay, EvictionPolicy evictionPolicy, boolean autoBalance, float balanceFactor) Creates a new Pool object.static <E extends Poolable>
ObjectPool<E>createObjectPool
(int capacity, long evictDelay, EvictionPolicy evictionPolicy, boolean autoBalance, float balanceFactor, long maxMemorySize, ObjectPool.MemoryMeasure<E> memoryMeasure) Creates a new Pool object.static <E extends Poolable>
ObjectPool<E>createObjectPool
(int capacity, long evictDelay, EvictionPolicy evictionPolicy, long maxMemorySize, ObjectPool.MemoryMeasure<E> memoryMeasure) Creates a new Pool object.
-
Method Details
-
createObjectPool
Creates a new Pool object.- Type Parameters:
E
-- Parameters:
capacity
-- Returns:
-
createObjectPool
Creates a new Pool object.- Type Parameters:
E
-- Parameters:
capacity
-evictDelay
-- Returns:
-
createObjectPool
public static <E extends Poolable> ObjectPool<E> createObjectPool(int capacity, long evictDelay, EvictionPolicy evictionPolicy) Creates a new Pool object.- Type Parameters:
E
-- Parameters:
capacity
-evictDelay
-evictionPolicy
-- Returns:
-
createObjectPool
public static <E extends Poolable> ObjectPool<E> createObjectPool(int capacity, long evictDelay, EvictionPolicy evictionPolicy, long maxMemorySize, ObjectPool.MemoryMeasure<E> memoryMeasure) Creates a new Pool object.- Type Parameters:
E
-- Parameters:
capacity
-evictDelay
-evictionPolicy
-maxMemorySize
-memoryMeasure
-- Returns:
-
createObjectPool
public static <E extends Poolable> ObjectPool<E> createObjectPool(int capacity, long evictDelay, EvictionPolicy evictionPolicy, boolean autoBalance, float balanceFactor) Creates a new Pool object.- Type Parameters:
E
-- Parameters:
capacity
-evictDelay
-evictionPolicy
-autoBalance
-balanceFactor
-- Returns:
-
createObjectPool
public static <E extends Poolable> ObjectPool<E> createObjectPool(int capacity, long evictDelay, EvictionPolicy evictionPolicy, boolean autoBalance, float balanceFactor, long maxMemorySize, ObjectPool.MemoryMeasure<E> memoryMeasure) Creates a new Pool object.- Type Parameters:
E
-- Parameters:
capacity
-evictDelay
-evictionPolicy
- default value isEvictionPolicy.LAST_ACCESS_TIME
autoBalance
- default value istrue
balanceFactor
- default value is0.2
maxMemorySize
-memoryMeasure
-- Returns:
-
createKeyedObjectPool
Creates a new Pool object.- Type Parameters:
K
- the key typeE
-- Parameters:
capacity
-- Returns:
-
createKeyedObjectPool
public static <K,E extends Poolable> KeyedObjectPool<K,E> createKeyedObjectPool(int capacity, long evictDelay) Creates a new Pool object.- Type Parameters:
K
- the key typeE
-- Parameters:
capacity
-evictDelay
-- Returns:
-
createKeyedObjectPool
public static <K,E extends Poolable> KeyedObjectPool<K,E> createKeyedObjectPool(int capacity, long evictDelay, EvictionPolicy evictionPolicy) Creates a new Pool object.- Type Parameters:
K
- the key typeE
-- Parameters:
capacity
-evictDelay
-evictionPolicy
-- Returns:
-
createKeyedObjectPool
public static <K,E extends Poolable> KeyedObjectPool<K,E> createKeyedObjectPool(int capacity, long evictDelay, EvictionPolicy evictionPolicy, long maxMemorySize, KeyedObjectPool.MemoryMeasure<K, E> memoryMeasure) Creates a new Pool object.- Type Parameters:
K
- the key typeE
-- Parameters:
capacity
-evictDelay
-evictionPolicy
-maxMemorySize
-memoryMeasure
-- Returns:
-
createKeyedObjectPool
public static <K,E extends Poolable> KeyedObjectPool<K,E> createKeyedObjectPool(int capacity, long evictDelay, EvictionPolicy evictionPolicy, boolean autoBalance, float balanceFactor) Creates a new Pool object.- Type Parameters:
K
- the key typeE
-- Parameters:
capacity
-evictDelay
-evictionPolicy
-autoBalance
-balanceFactor
-- Returns:
-
createKeyedObjectPool
public static <K,E extends Poolable> KeyedObjectPool<K,E> createKeyedObjectPool(int capacity, long evictDelay, EvictionPolicy evictionPolicy, boolean autoBalance, float balanceFactor, long maxMemorySize, KeyedObjectPool.MemoryMeasure<K, E> memoryMeasure) Creates a new Pool object.- Type Parameters:
K
- the key typeE
-- Parameters:
capacity
-evictDelay
-evictionPolicy
- default value isEvictionPolicy.LAST_ACCESS_TIME
autoBalance
- default value istrue
balanceFactor
- default value is0.2
maxMemorySize
-memoryMeasure
-- Returns:
-