Поделиться через


ChangeMonitor.NotifyOnChanged(OnChangedCallback) Метод

Определение

Вызывается средствами реализации кэша для регистрации обратного вызова и уведомления ObjectCache экземпляра через OnChangedCallback делегат при изменении зависимости.

public:
 void NotifyOnChanged(System::Runtime::Caching::OnChangedCallback ^ onChangedCallback);
public void NotifyOnChanged(System.Runtime.Caching.OnChangedCallback onChangedCallback);
member this.NotifyOnChanged : System.Runtime.Caching.OnChangedCallback -> unit
Public Sub NotifyOnChanged (onChangedCallback As OnChangedCallback)

Параметры

onChangedCallback
OnChangedCallback

Ссылка на метод, вызываемый при изменении зависимости.

Исключения

Метод обратного вызова уже вызван.

onChangedCallback равно null.

Комментарии

Реализация кэша использует этот метод для подключения себя к монитору изменений. Если вы связываете один или несколько мониторов изменений с элементом кэша, передайте CacheItemPolicy экземпляр с заполненным свойством мониторов изменений в элемент кэша. Средство реализации кэша, поддерживающее мониторы изменений, отвечает за итерацию ChangeMonitors по свойству и регистрации OnChangedCallback делегатов с каждым монитором изменений, который он находит.

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

Замечание

API расширяемости базового кэша не требует явной зависимости от типа состояния.

Реализация NotifyOnChanged метода автоматически определяет, изменилось ли состояние монитора во время NotifyOnChanged вызова метода. HasChanged Если свойство равноtrue, метод автоматически вызывает OnChangedCallback обработчик событий, зарегистрированный с помощью OnChanged метода. Это происходит потому, что с момента создания монитора изменений при реализации кэша до времени, когда реализация кэша получает монитор и провода к нему, базовое отслеживаемое состояние изменилось. Если состояние уже изменилось, объект, передаваемый методу OnChangednull.

Метод NotifyOnChanged можно вызвать только один раз и вызвать исключение при последующих вызовах.

Примечания для тех, кто наследует этот метод

  1. Необходимо вызвать NotifyOnChanged(OnChangedCallback) метод, чтобы получать уведомления о любых изменениях зависимостей. Если уже произошло изменение зависимостей, OnChangedCallback экземпляр будет вызываться при NotifyOnChanged(OnChangedCallback) вызове. OnChangedCallback В противном случае экземпляр будет вызываться один раз, либо при OnChanged(Object) вызове метода, либо при Dispose() вызове метода, в зависимости от того, что происходит в первую очередь. Экземпляр OnChangedCallback , предоставленный реализацией кэша, должен удалить запись кэша и, если он запрашивается вызывающим сервером кэша, вызовите необходимое событие изменения или обновления обратно в исходный вызывающий кэш.

  2. Реализация кэша объектов должна удалить запись кэша, связанную с изменением зависимостей.

Применяется к

См. также раздел