PoolManager
class PoolManager implements Factory
Properties
| protected ObjectPool> | $pools | ||
| protected PoolDefinition> | $definitions |
Methods
Get or create a named pool.
Get or create the pool registered for an immutable definition.
Get a currently registered managed pool by identity.
Determine if a pool is currently registered for an identity.
Get all registered pools keyed by identity.
Get the definition currently registered for an identity.
Remove and close a pool when it still matches an optional expected instance.
Remove and close every registered pool.
Describe only normalized pool-option differences.
Details
at line 29
ObjectPool
pool(string $name, callable $createCallback, array $options = [])
Get or create a named pool.
The name declares construction equivalence: every callback used with it must construct an equivalent object. Resolve the pool each time you borrow, because idle managed pools may be removed and closed.
at line 48
ObjectPool
getOrCreate(PoolDefinition $definition, callable $createCallback)
Get or create the pool registered for an immutable definition.
at line 98
ObjectPool
get(string $identity)
Get a currently registered managed pool by identity.
at line 112
bool
has(string $identity)
Determine if a pool is currently registered for an identity.
This does not reserve registry membership across a coroutine yield.
at line 122
array
getPools()
Get all registered pools keyed by identity.
at line 130
PoolDefinition|null
getDefinition(string $identity)
Get the definition currently registered for an identity.
at line 138
bool
purge(string $identity, ObjectPool|null $expected = null)
Remove and close a pool when it still matches an optional expected instance.
at line 158
void
purgeAll()
Remove and close every registered pool.
Boot or tests only. This clears worker-lifetime pools shared by every coroutine; use targeted removal for runtime resource recovery.
at line 190
protected string
diffOptions(PoolOptions $registered, PoolOptions $requested)
Describe only normalized pool-option differences.