共用方式為


可靠性警告

支援程式庫和應用程式可靠性的可靠性警告,如記憶體和執行緒的正確用法。

在本節中

規則

描述

CA2000:必須在超出範圍前處置物件

因為可能會發生例外事件以防止執行物件的完成項,所以應在物件的所有參考都超出範圍之前,明確處置物件。

CA2001:避免呼叫有問題的方法

成員呼叫了可能有危險或問題的方法。

CA2002:請勿鎖定具有弱式識別的物件

可以跨應用程式定義域範圍直接存取的物件,即所謂具有弱式識別的物件。 嘗試取得具有弱式識別之物件鎖定的執行緒,可以被不同應用程式定義域中具有相同物件鎖定的第二個執行緒所封鎖。

CA2003:不要將 Fiber 視為執行緒

Managed 執行緒已視為 Win32 執行緒。

CA2004:必須移除對 GC.KeepAlive 的呼叫

如果您要轉換成 SafeHandle 用法,則會移除對 GC.KeepAlive (物件) 的所有呼叫。 在此情況下,類別不一定要呼叫 GC.KeepAlive,假設它們沒有完成項,但會根據 SafeHandle 最終處理其 OS 控制代碼。

CA2006:使用 SafeHandle 封裝原生資源

在 Managed 程式碼中使用 IntPtr,可能會有潛在的安全性和可靠性問題。 必須檢閱所有使用 IntPtr 的情況,判斷是否需要在該處使用 SafeHandle (或類似技術)。