MemoryCache.Dispose Metodo

Definizione

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

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 su 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 pubblica 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 della cache corrente.

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

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

  6. Vengono chiamate tutte CacheItemRemovedCallback le istanze registrate con voci nella cache. Il motivo della rimozione passato ai callback è CacheSpecificEviction.

Si applica a