Condividi tramite


Avvisi di affidabilità

Gli avvisi di affidabilità supportano l'affidabilità di librerie e applicazioni, ad esempio l'utilizzo corretto di memoria e thread.

In questa sezione

Regola

Descrizione

CA2000: Eliminare gli oggetti prima di perdere l'ambito

Poiché è possibile che si verifichi un evento eccezionale che impedisca l'esecuzione del finalizzatore di un oggetto, è opportuno eliminare in modo esplicito l'oggetto prima che tutti i riferimenti a tale oggetto siano esterni all'ambito.

CA2001: Evitare le chiamate a metodi problematici

Un membro chiama un metodo potenzialmente pericoloso o problematico.

CA2002: Non bloccare oggetti con identità debole

Un oggetto presenta un'identità debole quando è possibile accedere ad esso direttamente attraverso i confini dei domini applicazione.Un thread che tenta di acquisire un blocco su un oggetto con identità debole può essere bloccato da un secondo thread in un altro dominio applicazione con un blocco sullo stesso oggetto.

CA2003: Non considerare i fiber come i thread

Un thread gestito viene considerato come thread Win32.

CA2004: Rimuovere le chiamate a GC.KeepAlive

Se si effettua la conversione all'utilizzo di SafeHandle, rimuovere tutte le chiamate a GC.KeepAlive (oggetto).In questo caso non sarebbe necessario per le classi chiamare GC.KeepAlive, presupponendo che non dispongano di un finalizzatore ma si affidino a SafeHandle per finalizzare l'handle OS al loro posto.

CA2006: Utilizzare SafeHandle per incapsulare le risorse native

L'utilizzo di IntPtr nel codice gestito potrebbe indicare un potenziale problema di sicurezza e affidabilità.Tutte le occorrenze di IntPtr devono essere esaminate per stabilire se al loro posto è necessario utilizzare SafeHandle o una tecnologia simile.