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

依存関係が変更されたときに呼び出されるメソッドへの参照。

例外

コールバック メソッドが既に呼び出されています。

onChangedCallbacknullです。

注釈

キャッシュ実装者は、このメソッドを使用して、自身を変更モニターに接続します。 1 つ以上の変更モニターをキャッシュ項目に関連付ける場合は、設定された変更モニター プロパティを持つインスタンスをキャッシュ項目 CacheItemPolicy に渡します。 変更モニターをサポートするキャッシュ実装者は、 プロパティを反復処理し、見つけた各変更モニターにデリゲートを ChangeMonitors OnChangedCallback 登録する必要があります。

デリゲートにはオプション OnChangedCallback の状態パラメーターが含まれるため、具象変更モニターの実装ではオプションの状態情報を渡す可能性があります。 キャッシュ実装者は、カスタム変更モニターがコールバックの一部として渡す状態の種類に対する明示的な依存関係を取得できるかどうかを決定します。

注意

基本キャッシュ拡張 API には、状態の種類に対する明示的な依存関係の要件はありません。

メソッドの実装により、メソッドが呼び出された時点でモニターの状態が既に変更 NotifyOnChanged NotifyOnChanged されているかどうかを自動的に判断します。 プロパティが の場合、メソッドは メソッドを介して登録されたイベント ハンドラーを HasChanged true OnChangedCallback 自動的に呼び出 OnChanged します。 これは、キャッシュの実装によって変更モニターが作成された時点から、キャッシュの実装がモニターを取得してそれ自体を接続する時点まで、基になる監視対象の状態が変更された可能性があります。 状態が既に変更されている場合、メソッドに渡される オブジェクトは OnChanged です null

メソッド NotifyOnChanged を呼び出すことができるのは 1 回だけであり、後続の呼び出しで例外がスローされます。

注意 (継承者)

1.依存関係の変更を NotifyOnChanged(OnChangedCallback) 通知するには、 メソッドを呼び出す必要があります。 依存関係の変更が既に発生している場合は、 が呼び出された場合 OnChangedCallback に インスタンス NotifyOnChanged(OnChangedCallback) が呼び出されます。 それ以外の場合、インスタンスは、メソッドが呼び出された場合、またはメソッドが呼び出された場合のいずれか最初に呼び出される場合に、1 回 OnChangedCallback OnChanged(Object) Dispose() 呼び出されます。 キャッシュ実装によって提供される インスタンスは、キャッシュ エントリを削除する必要があります。キャッシュの呼び出し元によって要求された場合は、必要な変更イベントまたは更新イベントを元のキャッシュ呼び出し元 OnChangedCallback に戻します。

  1. オブジェクト キャッシュの実装では、依存関係の変更に関連付けられているキャッシュ エントリを削除する必要があります。

適用対象

こちらもご覧ください