MemoryCache.Dispose Metódus

Definíció

Az osztály aktuális példánya által használt összes erőforrást felszabadítja MemoryCache .

public:
 virtual void Dispose();
public void Dispose();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()

Megvalósítás

Megjegyzések

Minden MemoryCache példány az eseményhez AppDomainUnloaded van kötve. Az alkalmazástartomány leállítása során azonban, ha egy memóriaalapú gyorsítótár nincs explicit módon megsemmisítve, a gyorsítótárpéldány automatikusan meghívja a metódust Dispose .

Az eldobott gyorsítótárpéldány a következő lépésekkel leáll:

  1. A gyorsítótár állapota azt jelzi, hogy a gyorsítótár el van helyezve. A gyorsítótár állapotát módosító nyilvános gyorsítótárazási módszerek meghívására tett kísérletek ( például a gyorsítótárbejegyzések hozzáadását, eltávolítását vagy lekérését) nem várt viselkedést okozhatnak. Ha például a gyorsítótár kiürítése után hívja meg a Set metódust, no-op hiba történik. Ha megpróbál elemeket lekérni a gyorsítótárból, a Get metódus mindig vissza fog térni null.

  2. A teljesítményszámláló adatai már nem jelennek meg az aktuális gyorsítótárpéldányból.

  3. Az aktuális gyorsítótárpéldány által tárolt gyorsítótárazott objektumokra mutató összes hivatkozás ki lesz adva.

  4. A rendszer értesítést küld minden CacheEntryChangeMonitor olyan példányról, amely jelenleg figyeli a gyorsítótár bejegyzéseit.

  5. A rendszer meghívja azokat a visszahívási objektumokat, amelyek értesítést adnak a monitorok változásairól.

  6. A rendszer meghívja a gyorsítótárban lévő bejegyzésekkel regisztrált példányokat CacheItemRemovedCallback . A visszahívásoknak átadott eltávolítási ok a következő CacheSpecificEviction: .

A következőre érvényes: