FormEditorModelsGlobalCache - класс

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

Definition

Пространство имён: Tessa.FormEditor
Сборка: Tessa (в Tessa.dll) Версия: 4.2.0+ffad8363f63902f18b3b3f4cfa533a14b2fb19a6
C#
public sealed class FormEditorModelsGlobalCache : GlobalCache<FormEditorModelsSharedEventPayload>
Inheritance
Object    PayloadSharedEventReceiverBaseFormEditorModelsSharedEventPayload    GlobalCacheFormEditorModelsSharedEventPayload    FormEditorModelsGlobalCache

Заметки

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

Доступ к локальному кэшу экземпляра для его наполнения, сброса и чтения данных потокобезопасен и не требует дополнительной синхронизации.

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

Конструкторы

FormEditorModelsGlobalCache Потокобезопасный кэш, обеспечивающий синхронный сброс кэша всех экземпляров с заданным именем независимо от того, располагаются ли такие экземпляры в том же приложении или в другом процессе.

Свойства

Dependencies Зависимости объекта GlobalCacheTPayload
(Унаследован от GlobalCacheTPayload)
EventID Идентификатор глобального события. Должен быть уникален для каждого события.
(Переопределяет PayloadSharedEventReceiverBaseTPayloadEventID)
InterprocessCommunicationIsEnabled Возвращает признак того, что кэш использует коммуникацию между процессами. Значение false определяет, что кэш перестаёт быть глобальным и кэширует данные только в текущем объекте.
(Унаследован от GlobalCacheTPayload)
IsDisposedПризнак того, что ресурсы объекта были освобождены.
(Унаследован от PayloadSharedEventReceiverBaseTPayload)
IsEventSubscribed Признак того, что объект подписан на событие.
(Унаследован от PayloadSharedEventReceiverBaseTPayload)

Методы

AcquireCheckDisposedLockAsync Выполняет взятие блокировки, внутри которой гарантированно не будет вызвано освобождение текущего объекта DisposeAsync. После вызова метода проверьте свойство IsDisposed. При освобождении возвращённого объекта блокировка снимается.
(Унаследован от PayloadSharedEventReceiverBaseTPayload)
AddInvalidatedHandlerAsync Добавляет обработчик события, которое содержит вызовы на сброс внешнего кэша, зависимого от текущего кэша.
(Унаследован от GlobalCacheTPayload)
DisposeAsyncОсвобождает ресурсы, занимаемые объектом.
(Унаследован от PayloadSharedEventReceiverBaseTPayload)
DisposeCoreAsync Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously.
(Унаследован от GlobalCacheTPayload)
EnsureEventSubscribedAsync Выполняет подписку на глобальное событие, если объект ещё не был подписан.
(Унаследован от PayloadSharedEventReceiverBaseTPayload)
EnsureInvalidateCacheSubscribedAsync Выполняет подписку на глобальное событие сброса кэша, если объект ещё не был подписан.
(Унаследован от GlobalCacheTPayload)
EqualsDetermines whether the specified object is equal to the current object.
(Унаследован от Object)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Унаследован от Object)
GetAsyncT Инициирует заполнение кэша при необходимости и возвращает запрошенное из кэша значение.
(Унаследован от GlobalCacheTPayload)
GetGlobalCacheInvalidationContext Возвращает текущий контекст глобальной инвалидации кэшей, используемый для оптимизации инвалидаций нескольких кэшей сразу или многократной инвалидации одного кэша (как при импорте набора карточек).
(Унаследован от GlobalCacheTPayload)
GetHashCodeServes as the default hash function.
(Унаследован от Object)
GetModelAsync Returns model stored in cache.
GetTypeGets the Type of the current instance.
(Унаследован от Object)
InvalidateGlobalAsync Invalidates global forms cache.
InvalidateGlobalCacheAsync Инициирует глобальный сброс кэша. Он затрагивает как текущий, так и другие экземпляры кэша с тем же именем, которые могут располагаться в других процессах.
(Унаследован от GlobalCacheTPayload)
InvalidateLocalAsync Invalidates local forms cache.
InvalidateLocalCacheAsync Инициирует локальный сброс кэша (в текущем экземпляре).
(Унаследован от GlobalCacheTPayload)
InvalidateLocalCacheCoreAsync Метод, реализующий логику сброс кэша в текущем экземпляре, определяемую в конкретных классах кэшей. Для вызова инвалидации используйте метод InvalidateLocalCacheAsync(TPayload).
(Переопределяет GlobalCacheTPayloadInvalidateLocalCacheCoreAsync(TPayload))
MemberwiseCloneCreates a shallow copy of the current Object.
(Унаследован от Object)
NotifyEventAsync Отправляет информацию по событию всем его обработчикам (включая текущий объект, если он был подписан вызовом EnsureEventSubscribedAsync(CancellationToken)).
(Унаследован от PayloadSharedEventReceiverBaseTPayload)
OnEventReceivedAsync Метод, выполняющий обработку полученного события (которое могло быть отправлено как в текущем, так и в другом процессе).
(Унаследован от GlobalCacheTPayload)
RemoveInvalidatedHandler Удаляет обработчик события, которое содержит вызовы на сброс внешнего кэша, зависимого от текущего кэша.
(Унаследован от GlobalCacheTPayload)
SubscribeEventAsync Подписывается на глобальное событие. Метод выполняется в блокировке и только, если подписка ещё не выполнялась. Может быть переопределён в наследниках.
(Унаследован от PayloadSharedEventReceiverBaseTPayload)
ToStringReturns a string that represents the current object.
(Унаследован от Object)
TryGetAsyncT Возвращает запрошенное из кэша значение или null, если значение отсутствует.
(Унаследован от GlobalCacheTPayload)
UnsubscribeEventAsync Отписывается от глобального события. Метод выполняется в блокировке и не должен выполнять действий, если подписки не было. Может быть переопределён в наследниках.
(Унаследован от PayloadSharedEventReceiverBaseTPayload)

См. также