ChangeMonitor.NotifyOnChanged(OnChangedCallback) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
Cache implementers verwenden diese Methode, um sich mit einem Änderungsmonitor zu verkabeln. Wenn Sie dem Cacheelement einen oder mehrere Änderungsmonitore zuordnen, übergeben Sie eine CacheItemPolicy -Instanz mit einer aufgefüllten Change Monitors-Eigenschaft an das Cacheelement. Ein Cache-Implementierer, der Änderungsmonitore unterstützt, ist für das Iterieren der ChangeMonitors -Eigenschaft verantwortlich und registriert die OnChangedCallback Delegaten bei jedem gefundenen Änderungsmonitor.
Da der OnChangedCallback Delegat einen optionalen Zustandsparameter enthält, kann eine konkrete Implementierung des Änderungsmonitors optionale Zustandsinformationen übergeben. Der Cache implementer bestimmt, ob eine explizite Abhängigkeit vom Zustandstyp, den ein benutzerdefinierter Änderungsmonitor als Teil des Rückrufs übergibt, übernommen werden kann.
Hinweis
Die Api für die Erweiterbarkeit des Basiscaches ist nicht für eine explizite Abhängigkeit vom Zustandstyp erforderlich.
Die Implementierung der NotifyOnChanged -Methode bestimmt automatisch, ob sich der Zustand des Monitors zum Zeitpunkt des Aufrufs der Methode bereits geändert NotifyOnChanged hat. Wenn die HasChanged -Eigenschaft true ist, ruft die -Methode automatisch den OnChangedCallback -Ereignishandler auf, der über die -Methode registriert OnChanged wurde. Dies tritt auf, da es möglich ist, dass sich der zugrunde liegende überwachte Zustand von der Erstellung eines Änderungsmonitors bis zu dem Zeitpunkt, zu dem eine Cacheimplementierungen den Monitor erhält und sich selbst damit verkabelt, geändert hat. Wenn sich der Zustand bereits geändert hat, ist das Objekt, das an die Methode übergeben OnChanged null wird, .
Die NotifyOnChanged -Methode kann nur einmal aufgerufen werden und löst bei nachfolgenden Aufrufen eine Ausnahme aus.
Hinweise für Vererber
Sie müssen die NotifyOnChanged(OnChangedCallback) -Methode aufrufen, um über Abhängigkeitsänderungen benachrichtigt zu werden. Wenn bereits eine Abhängigkeitsänderung aufgetreten ist, wird die OnChangedCallback -Instanz aufgerufen, wenn NotifyOnChanged(OnChangedCallback) aufgerufen wird. Andernfalls wird die OnChangedCallback -Instanz einmal aufgerufen, entweder beim Aufruf der OnChanged(Object) Methode oder beim Aufruf der Dispose() Methode, je nachdem, was zuerst auftritt. Die OnChangedCallback von der Cacheimplementierungen bereitgestellte Instanz sollte den Cacheeintrag entfernen. Wenn er vom Cacheaufrufer angefordert wird, sollte das erforderliche Änderungs- oder Aktualisierungsereignis an den ursprünglichen Cacheaufrufer zurückgerufen werden.
Die Objektcacheimplementierungen müssen den Cacheeintrag entfernen, der einer Abhängigkeitsänderung zugeordnet ist.