Class Pool<T>
- Namespace
- KSP.Networking.MP.Utils
- Assembly
- Assembly-CSharp.dll
public class Pool<T> : IPool<T> where T : class
Type Parameters
T
- Inheritance
-
Pool<T>
- Implements
-
- Inherited Members
-
- Extension Methods
-
Constructors
Pool(Allocator, Resetter, Resetter, object)
public Pool(Pool<T>.Allocator allocator, Pool<T>.Resetter resetOnAcquire, Pool<T>.Resetter resetOnReturn, object optionalLock)
Parameters
allocator Pool<T>.Allocator
resetOnAcquire Pool<T>.Resetter
resetOnReturn Pool<T>.Resetter
optionalLock object
Fields
_allocator
protected Pool<T>.Allocator _allocator
Field Value
- Pool<T>.Allocator
_available
protected List<T> _available
Field Value
- List<T>
_optionalLock
protected object _optionalLock
Field Value
- object
_resetterOnAcquire
protected Pool<T>.Resetter _resetterOnAcquire
Field Value
- Pool<T>.Resetter
_resetterOnReturn
protected Pool<T>.Resetter _resetterOnReturn
Field Value
- Pool<T>.Resetter
Properties
AvailableCount
public int AvailableCount { get; }
Property Value
- int
Methods
Acquire()
public virtual T Acquire()
Returns
- T
AcquireHandle()
public virtual Pool<T>.ReturnableHandle AcquireHandle()
Returns
- Pool<T>.ReturnableHandle
AcquireMultiple(ICollection<T>, int)
public virtual void AcquireMultiple(ICollection<T> collection, int count)
Parameters
collection ICollection<T>
count int
Flush()
public virtual void Flush()
MakeAvailable(int)
public virtual void MakeAvailable(int count)
Parameters
count int
Return(ref T)
public virtual void Return(ref T t)
Parameters
t T
ReturnUnprotected(T)
public virtual void ReturnUnprotected(T t)
Parameters
t T