LimitedPool<T> - конструктор
Создаёт экземпляр класса с указанием параметров по жизненному циклу.
Пространство имён: Tessa.Platform.CollectionsСборка: Tessa (в Tessa.dll) Версия: 3.6.0.23
public LimitedPool(
Func<T> valueFactory,
Func<T, ValueTask> valueDisposeActionAsync = null,
TimeSpan? valueLifetime = null
)
Public Sub New (
valueFactory As Func(Of T),
Optional valueDisposeActionAsync As Func(Of T, ValueTask) = Nothing,
Optional valueLifetime As TimeSpan? = Nothing
)
public:
LimitedPool(
Func<T>^ valueFactory,
Func<T, ValueTask>^ valueDisposeActionAsync = nullptr,
Nullable<TimeSpan> valueLifetime = nullptr
)
new :
valueFactory : Func<'T> *
?valueDisposeActionAsync : Func<'T, ValueTask> *
?valueLifetime : Nullable<TimeSpan>
-> LimitedPool
Параметры
- valueFactory Func<T>
-
Функция, создающая и возвращающая объект-значение для использования в пуле.
Не должна быть равна null.
- valueDisposeActionAsync Func<T, ValueTask> (Optional)
-
Метод, выполняющий освобождение ресурсов для объекта-значения при удалении его из пула.
Если указано null, то для объекта-значения вызывается метод DisposeAsync(),
если он реализует интерфейс IAsyncDisposable,
или метод Dispose(), если он реализует интерфейс IDisposable.
- valueLifetime Nullable<TimeSpan> (Optional)
-
Время жизни объектов в пуле, в течение которого они могут переиспользоваться.
Если указано null, то объект будет повторно использоваться не более одного часа.
Экземпляр объекта может быть не освобождён по завершению времени жизни,
если это не запрошено пулом LimitedPool<T>,
но гарантируется, что такой объект не будет использован при запросе нового объекта из пула.