public abstract class GlobalCache<TEventArgs> : IAsyncDisposable
where TEventArgs : class, new(), ISharedEventArgs
Public MustInherit Class GlobalCache(Of TEventArgs As {Class, New, ISharedEventArgs})
Implements IAsyncDisposable
generic<typename TEventArgs>
where TEventArgs : ref class, gcnew(), ISharedEventArgs
public ref class GlobalCache abstract : IAsyncDisposable
[<AbstractClassAttribute>]
type GlobalCache<'TEventArgs when 'TEventArgs : not struct, new() and ISharedEventArgs> =
class
interface IAsyncDisposable
end
Доступ на чтение из кэша и наполнение кэша осуществляет только синхронизацию между потоками для доступа к экземпляру, поэтому чтение может осуществляться сравнительно часто небольшими порциями.
Доступ к локальному кэшу экземпляра для его наполнения, сброса и чтения данных потокобезопасен и не требует дополнительной синхронизации.
Доступ и наполнение локального кэша возможно даже после освобождения объекта вызовом DisposeAsync, но после такого вызова все глобальные объекты синхронизации освобождаются и более не используются.
GlobalCacheTEventArgs(IGlobalCacheLock, ISharedNameFactory, ISharedEventSubscriberFactory) | Создаёт экземпляр класса с указанием его зависимостей. Если параметры nameFactory и subscriberFactory равны null, то кэш не является глобальным и кэширует данные только в текущем объекте. |
GlobalCacheTEventArgs(String, IGlobalCacheLock, ISharedEventSubscriberFactory) | Создаёт экземпляр класса с указанием имени, являющегося глобально уникальным для экземпляров кэша, расположенных в различных процессах. Это рекомендуемый конструктор для создания базовых объектов глобального кэша. |
InterprocessCommunicationIsEnabled | Возвращает признак того, что кэш использует коммуникацию между процессами. Значение false определяет, что кэш перестаёт быть глобальным и кэширует данные только в текущем объекте. |
IsDisposed | Признак того, что ресурсы объекта были освобождены. |
DisposeAsync | Освобождает ресурсы, занимаемые объектом. |
DisposeAsync(Boolean) | Освобождает ресурсы, занимаемые объектом. |
EnsureInvalidateCacheSubscribedAsync | Выполняет подписку на глобальное событие сброса кэша, если объект ещё не был подписан. Метод следует вызывать только в том случае, если доступ к кэшируемым данным осуществляется не только через методы GetAsyncT(FuncCancellationToken, TaskT, FuncCancellationToken, TaskT, Boolean, CancellationToken) и TryGetAsyncT(FuncCancellationToken, TaskT, Boolean, CancellationToken). |
Equals | Determines whether the specified object is equal to the current object. (Унаследован от Object) |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Унаследован от Object) |
GetAsyncT | Инициирует заполнение кэша при необходимости и возвращает запрошенное из кэша значение. |
GetHashCode | Serves as the default hash function. (Унаследован от Object) |
GetType | Gets the Type of the current instance. (Унаследован от Object) |
InvalidateGlobalCacheAsync | Инициирует глобальный сброс кэша, который затрагивает как текущий, так и другие экземпляры кэша с тем же именем, которые могут располагаться в других процессах. |
InvalidateLocalCacheAsync | Метод, реализующий сброс кэша в текущем экземпляре. Метод является потокобезопасным и может обращаться к кэшу без дополнительной синхронизации. |
InvalidateLocalCacheOverrideAsync | Метод, реализующий сброс кэша в текущем экземпляре. Метод является потокобезопасным и может обращаться к кэшу без дополнительной синхронизации. Любые необработанные исключения, возникшие внутри делегата, игнорируются с записью в лог. |
MemberwiseClone | Creates a shallow copy of the current Object. (Унаследован от Object) |
ToString | Returns a string that represents the current object. (Унаследован от Object) |
TryGetAsyncT | Возвращает запрошенное из кэша значение или null, если значение отсутствует. |
Invalidated | Событие, которое содержит вызовы на сброс внешнего кэша, зависимого от текущего кэша. Обработчики событий должны как можно более быстро выполнить код по сбросу кэша. Все исключения, возникшие в обработчиках, игнорируются с записью в лог. |
InvalidatedEventName | Семантическое имя события по сбросу кэша. |
Get | (Определяется ComHelper) |
Invoke | (Определяется ComHelper) |
RegisterInConstructorTEventArgs |
Выполняет регистрацию текущего глобального кэша cache
в контейнере container. Все ресурсы глобального кэша
могут быть освобождены, если регистрация в контейнере container
завершена по причине того, что все объекты контейнера уже были освобождены.
Возвращает признак того, что ресурсы глобального кэша не были освобождены.
(Определяется PlatformExtensions) |
Set | (Определяется ComHelper) |