Share via


強制記憶體回收

記憶體回收 GC 類別會提供 GC.Collect 方法,允許您擁有應用程式記憶體回收行程某種程度的直接控制。一般而言,您應該避免呼叫任何回收方法和允許記憶體回收行程獨立執行。在大多數情況下,記憶體回收行程比較適合用來決定執行回收的最佳時機。但是,在某些罕見的情況下,強制回收可能會增進應用程式的效能。如果能在應用程式的程式碼中定義的某一點上明顯減少記憶體的使用量,那麼使用 GC.Collect 方法或許是很適當的。例如,應用程式可能會使用參考許多 Unmanaged 資源的文件。當應用程式關閉該文件時,您當然知道已經不再需要這些文件所使用的資源。基於效能的理由,將它們一次全部釋放是很合理的。如需詳細資訊,請參閱 GC.Collect 方法

在記憶體回收行程執行回收之前,它會暫止所有目前正在執行的執行緒。如果在沒有必要的情況下呼叫 GC.Collect 太過頻繁的話,反而會造成效能上的問題。您也應該注意,不要將呼叫 GC.Collect 的程式碼置於程式中使用者可以時常呼叫它的地方。這樣將會使記憶體回收行程中判斷執行記憶體回收最佳時機的最佳化引擎失去效用。

請參閱

記憶體回收的程式設計 | GC 類別