GlobalCacheTPayloadTryGetAsyncT - метод

Возвращает запрошенное из кэша значение или null, если значение отсутствует.

Definition

Пространство имён: Tessa.Platform.Caching
Сборка: Tessa (в Tessa.dll) Версия: 4.1.3+7e2b1422f9b8c7c41fbbc4b151a843bed05319ab
C#
protected ValueTask<T> TryGetAsync<T>(
	Func<CancellationToken, ValueTask<T>> tryGetFuncAsync,
	bool optimizeAtomicTryGet = false,
	CancellationToken cancellationToken = default
)
where T : class

Параметры

tryGetFuncAsync  FuncCancellationToken, ValueTaskT

Функция, осуществляющая чтение из локального кэша вне блокировок между процессами. Для передачи параметров следует использовать замыкание. Функция возвращает null, если значение прочитать не удалось и требуется наполнение локального кэша из внешнего источника.

Обращение к локальному кэшу потокобезопасно и может проводиться без дополнительной синхронизации.

optimizeAtomicTryGet  Boolean  (Optional)

Флаг оптимизации атомарных обращений к кэшу.

При включении этого флага метод tryGetFuncAsync будет вызван без взятия блокировок и для него не гарантируется потокобезопасность.

Перед использованием этого флага убедитесь, что методы tryGetFuncAsync и InvalidateLocalCacheCoreAsync(TPayload) потокобезопасны.

cancellationToken  CancellationToken  (Optional)
Объект, посредством которого можно отменить асинхронную задачу.

Параметры типа

T
Тип запрашиваемого объекта.

Возвращаемое значение

ValueTaskT
Запрошенное из кэша значение или null, если требуется наполнение локального кэша из внешнего источника.

См. также