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