LimitedPoolT - конструктор
Создаёт экземпляр класса с указанием параметров по жизненному циклу.
Пространство имён: Tessa.Platform.CollectionsСборка: Tessa (в Tessa.dll) Версия: 4.0.4
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>
(* Defaults:
let _valueDisposeActionAsync = defaultArg valueDisposeActionAsync null
let _valueLifetime = defaultArg valueLifetime null
*)
-> LimitedPool
Параметры
- valueFactory FuncT
-
Функция, создающая и возвращающая объект-значение для использования в пуле.
Не должна быть равна null.
- valueDisposeActionAsync FuncT, ValueTask (Optional)
-
Метод, выполняющий освобождение ресурсов для объекта-значения при удалении его из пула.
Если указано null, то для объекта-значения вызывается метод DisposeAsync,
если он реализует интерфейс IAsyncDisposable,
или метод Dispose, если он реализует интерфейс IDisposable.
- valueLifetime NullableTimeSpan (Optional)
-
Время жизни объектов в пуле, в течение которого они могут переиспользоваться.
Если указано null, то объект будет повторно использоваться не более одного часа.
Экземпляр объекта может быть не освобождён по завершению времени жизни,
если это не запрошено пулом LimitedPoolT,
но гарантируется, что такой объект не будет использован при запросе нового объекта из пула.