.NET 效能秘訣

 

效能」(Performance) 一詞通常是指程式的執行速度。有時候您可以在原始程式碼中藉由下列某些基本規則,以提高執行速度。某些程式中,仔細地檢查程式碼及使用分析工具 (Profiler) 來確保程式碼能以最快速度執行,是很重要的。在其他程式中,您不需要執行這種最佳化工作,因為程式碼會在其撰寫的可接受速度下執行。本文件列出效能可能會減損的一般區域、改善的提示,以及其他效能主題的連結。如需規劃和測量效能的詳細資訊,請參閱 .NET Framework Performance

Boxing 和 Unboxing

在必須多次 Box 處理實值類型 (Value Type) 的情況下,例如在 System.Collections.ArrayList 等非泛型集合類別中,最好避免使用實值類型。您可以使用泛型集合例如 System.Collections.Generic.List<T>,避免 Box 處理實值類型。Box 和 Unbox 處理是大量耗用運算資源的處理序。當實值類型經 Box 處理時,必須建立全新的物件。這個過程需要的時間可能是簡單參考指派的 20 倍。執行 Unbox 處理時,轉換處理序所需的時間可能是指派的四倍。如需詳細資訊,請參閱 Boxing 和 Unboxing

字串

當您串連許多字串變數時 (例如在緊密迴圈中),請使用 System.Text.StringBuilder 代替 C# + 運算子或 Visual Basic 的 串連運算子。如需詳細資訊,請參閱如何:串連多個字串 (C# 程式設計手冊)Concatenation Operators in Visual Basic

解構函式

您不應使用空的解構函式。當類別包含解構函式時,會在 Finalize 佇列中建立一個項目。當呼叫解構函式時,即會叫用記憶體回收行程處理佇列。如果解構函式是空的,則只會導致效能損失。如需詳細資訊,請參閱解構函式 (C# 程式設計手冊)Object Lifetime: How Objects Are Created and Destroyed (Visual Basic)

其他資源

另請參閱

.NET Framework Performance
程式設計概念
Visual Basic Programming Guide
C# 程式設計手冊