/// <summary> /// Initializes a new instance of the <see cref="PooledObject{T}"/> class. /// </summary> /// <param name="pool">The object pool.</param> /// <param name="releaser">The function to release object.</param> public PooledObject([NotNull] ObjectPool <T> pool, [NotNull] Action <ObjectPool <T>, T> releaser) { _pool = pool; _pooledObject = pool.Allocate(); _releaser = releaser; }
/// <summary> /// Initializes a new instance of the <see cref="PooledObject{T}"/> class. /// </summary> /// <param name="pool">The object pool.</param> public PooledObject([NotNull] ObjectPool <T> pool) : this() { _pool = pool; _pooledObject = pool.Allocate(); _releaser = null; }