Condividi tramite


MemoryCache.Dispose Metodo

Definizione

Rilascia tutte le risorse usate dall'istanza corrente della classe MemoryCache.

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

Implementazioni

Commenti

Ogni MemoryCache istanza è associata all'evento AppDomainUnloaded . Tuttavia, durante l'arresto del dominio applicazione, se una cache basata sulla memoria non è stata eliminata in modo esplicito, l'istanza della cache chiamerà automaticamente il Dispose metodo .

L'istanza della cache eliminata viene arrestata seguendo questa procedura:

  1. Lo stato della cache è impostato per indicare che la cache viene eliminata. Qualsiasi tentativo di chiamare metodi di memorizzazione nella cache pubblici che modificano lo stato della cache, ad esempio metodi che aggiungono, rimuovono o recuperano voci della cache, potrebbero causare un comportamento imprevisto. Ad esempio, se si chiama il Set metodo dopo l'eliminazione della cache, si verifica un errore no-op. Se si tenta di recuperare elementi dalla cache, il Get metodo restituirà nullsempre .

  2. Le informazioni sul contatore delle prestazioni non vengono più generate dall'istanza della cache corrente.

  3. Vengono rilasciati tutti i riferimenti agli oggetti memorizzati nella cache contenuti nell'istanza corrente della cache.

  4. Tutte CacheEntryChangeMonitor le istanze che attualmente monitorano le voci nella cache ricevono una notifica.

  5. Vengono chiamati oggetti di callback che forniscono notifica delle modifiche per tali monitoraggi.

  6. Tutte CacheItemRemovedCallback le istanze registrate con voci nella cache vengono chiamate. Il motivo di rimozione passato ai callback è CacheSpecificEviction.

Si applica a