ChangeMonitor.NotifyOnChanged(OnChangedCallback) Methode

Definition

Wird von Cacheimplementierungen aufgerufen, um einen Rückruf zu registrieren und über den ObjectCache-Delegaten eine OnChangedCallback-Instanz zu benachrichtigen, wenn sich eine Abhängigkeit geändert hat.

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)

Parameter

onChangedCallback
OnChangedCallback

Ein Verweis auf eine Methode, die aufgerufen wird, wenn eine Abhängigkeit geändert wurde.

Ausnahmen

Die Rückrufmethode wurde bereits aufgerufen.

onChangedCallback ist null.

Hinweise

Cacheimplementierer verwenden diese Methode, um sich mit einem Änderungsmonitor zu verbinden. Wenn Sie dem Cacheelement einen oder mehrere Änderungsmonitore zuordnen, übergeben Sie eine CacheItemPolicy instance mit einer aufgefüllten Änderungsmonitoreigenschaft an das Cacheelement. Ein Cacheimplementierer, der Änderungsmonitore unterstützt, ist für das Durchlaufen der ChangeMonitors Eigenschaft und die Registrierung der OnChangedCallback Delegaten bei jedem gefundenen Änderungsmonitor verantwortlich.

Da der OnChangedCallback Delegat einen optionalen Zustandsparameter enthält, kann eine konkrete Änderungsmonitorimplementierung optionale Zustandsinformationen übergeben. Der Cacheimplementierer bestimmt, ob eine explizite Abhängigkeit vom Zustandstyp besteht, den ein benutzerdefinierter Änderungsmonitor als Teil des Rückrufs übergibt.

Hinweis

Die Basiscache-Erweiterbarkeits-API erfordert keine explizite Abhängigkeit vom Zustandstyp.

Die Implementierung der NotifyOnChanged -Methode bestimmt automatisch, ob sich der Status des Monitors zum Zeitpunkt NotifyOnChanged des Aufrufs der Methode bereits geändert hat. Wenn die HasChanged -Eigenschaft ist true, ruft die -Methode automatisch den OnChangedCallback registrierten Ereignishandler über die OnChanged -Methode auf. Dies tritt auf, da es möglich ist, dass sich der zugrunde liegende überwachte Zustand geändert hat, bis zu dem Zeitpunkt, zu dem eine Cacheimplementierung den Monitor abruft und sich selbst daran verkabelt. Wenn sich der Zustand bereits geändert hat, ist das An die OnChanged -Methode nullübergebene Objekt .

Die NotifyOnChanged -Methode kann nur einmal aufgerufen werden und löst bei nachfolgenden Aufrufen eine Ausnahme aus.

Hinweise für Vererber

  1. Sie müssen die NotifyOnChanged(OnChangedCallback) -Methode aufrufen, um über Abhängigkeitsänderungen benachrichtigt zu werden. Wenn bereits eine Abhängigkeitsänderung erfolgt ist, wird die OnChangedCallback instance aufgerufen, wenn NotifyOnChanged(OnChangedCallback) aufgerufen wird. Andernfalls wird der OnChangedCallback instance einmal aufgerufen, entweder beim Aufruf der OnChanged(Object) Methode oder beim Aufruf der Dispose() Methode, je nachdem, was zuerst eintritt. Die OnChangedCallback von der Cacheimplementierung bereitgestellte instance sollte den Cacheeintrag entfernen. Wenn er vom Cacheaufrufer angefordert wird, lösen Sie das erforderliche Änderungs- oder Aktualisierungsereignis an den ursprünglichen Cacheaufrufer zurück.

  2. Die Objektcacheimplementierung muss den Cacheeintrag entfernen, der einer Abhängigkeitsänderung zugeordnet ist.

Gilt für:

Weitere Informationen