共用方式為


在發行或偵錯組建上執行分析工具(C#、Visual Basic、C++、F#)

Visual Studio 提供效能測量和分析工具的選擇。 某些工具,例如 CPU 使用量和記憶體使用量,可以在發行組建上執行,或在偵錯應用程式時執行 (偵錯組建)。 在偵錯會話期間,[診斷工具] 視窗中所顯示的工具 只會執行。 效能剖析器中顯示的工具 在不使用調試器的情況下執行,通常用於發行版本的組建,您可在選擇停止和收集數據後分析結果(後期分析用途)。

效能分析工具和調試程式整合的診斷工具提供不同的資訊和體驗。 使用診斷工具時,調試程式會顯示變數值,並可讓您使用斷點。

性能分析工具中的發行版本效能數值是最準確且最精確的。 這些工具可讓您獲得更接近終端用戶體驗的結果。 一般而言,這是使用分析工具的慣用方法。 不過,在某些情況下,在偵錯版中使用偵錯器可能有助於縮小效能問題的範圍,特別是如果您想要使用偵錯器的功能,例如斷點和程式碼逐步執行。

若要協助您決定在發行版本或偵錯版本中使用哪種剖析工具,請考慮下列事項:

  • 發行組建提供優化,例如內嵌函數調用和常數、剪除未使用的程式代碼路徑,以及以調試程式無法使用的方式儲存變數。 偵錯組建中的效能數位較不精確,因為偵錯組建缺少這些優化。
  • 除了發行組建和偵錯組建之間的差異之外,調試程式本身也會變更效能時間,因為其會執行攔截例外狀況和模組載入事件等必要調試程序作業。
  • 針對 CPU 密集呼叫所造成的效能問題,發行和偵錯組建之間可能會有相當大的效能差異。 請檢查版本組建中是否有 CPU 效能問題。
  • 外部效能問題,例如檔案 I/O 或網路回應性問題,在發行組建或偵錯組建中看起來並無太大差異。
  • 如果問題只發生於偵錯組建,您可能不需要使用發行組建執行工具。
  • 某些工具,例如 .NET 物件配置工具,僅適用於效能分析工具(非調試程式案例)。

收集發行版本的性能分析數據

若要收集發行組建的效能數據,請執行效能分析工具工具。

  1. 在 Visual Studio 中開啟專案時,將方案組態設定為 [Release],然後選取 [本機 Windows 調試程式] [或 本機電腦] 作為部署目標。

  2. 選取 偵錯>效能分析工具,或按 Alt+F2

  3. 在 [診斷工具啟動] 頁面上,選取一或多個要執行的工具。 只會顯示適用於項目類型、作業系統和程式設計語言的工具。 選取 顯示所有工具 以查看此診斷會話已停用的工具。

    診斷工具的螢幕快照。

    診斷工具的螢幕快照。

  4. 若要啟動診斷工作階段,請選擇 [開始]

    工作階段正在執行時,某些工具會在診斷工具頁面上顯示即時數據的圖表,而且可能會顯示暫停和繼續數據收集的選項。

    效能分析工具上數據收集的螢幕快照。

    效能分析工具上數據收集的螢幕快照。

  5. 若要結束診斷工作階段,請選取 [停止收集]

    分析的數據會出現在 報表 頁面上。

    如需可用於發行組建的工具,以及如何分析報告的詳細資訊,請參閱:

    注意

    使用重新啟動程式略過啟動頁面,並利用 Alt+F2 自動以先前設定執行,或點選 [偵錯] > [效能分析器]

  6. (選擇性)儲存報表,稍後您可以從 [診斷工具] 啟動頁面上的 [最近開啟的會話] 清單中開啟報表。

    診斷工具[最近開啟的會話列表]的螢幕快照。

    診斷工具最近開啟的會話列表的螢幕快照。

在偵錯時收集分析數據

當您在 Visual Studio 中選取 [偵錯]>[開始偵錯]來開始偵錯時,或按 F5,預設會顯示 [診斷工具] 視窗。 若要手動開啟它,請選擇 [偵錯]>Windows>[顯示診斷工具]。 [診斷工具] 視窗會顯示事件、進程記憶體、CPU 使用量和 .NET 計數器的相關信息。

[診斷工具] 視窗的螢幕快照。

  • 使用工具列中的 設定 圖示來選取是否要檢視 CPU 使用量記憶體使用量,或 .NET 計數器

當您在 Visual Studio 中選取 [偵錯]>[開始偵錯]來開始偵錯時,或按 F5,預設會顯示 [診斷工具] 視窗。 若要手動開啟它,請選擇 [偵錯]>Windows>[顯示診斷工具]。 [診斷工具] 視窗會顯示事件、進程記憶體和 CPU 使用量的相關信息。

[診斷工具] 視窗的螢幕快照,

  • 使用工具列中的 設定 圖示來選取是否要檢視 CPU 使用量記憶體使用量,或 UI 分析
  • 在 [設定] 下拉式清單中選取 [設定],以開啟 [診斷工具屬性頁],並提供更多選項。

  • 如果您執行 Visual Studio Enterprise,您可以移至 Tools>Options>IntelliTrace來啟用或停用 IntelliTrace。

當您停止偵錯時,診斷會話就會結束。

如需偵錯時可用工具的詳細資訊,請參閱:

事件標籤頁

在偵錯會話期間,[診斷工具] 視窗的 [事件] 索引卷標會列出發生的診斷事件。 類別前置詞 斷點檔案等,讓您能夠快速瀏覽清單中的類別,或跳過您不感興趣的類別。

使用 [篩選] 下拉式清單以篩選事件使其顯示或隱藏,然後選取或清除特定事件類別。

診斷事件篩選的螢幕快照。

診斷事件篩選診斷事件篩選螢幕快照

使用搜尋方塊在事件清單中尋找特定字串。 以下是搜尋檔名為 且符合三個事件的模型 結果:

診斷事件搜尋的螢幕快照。

使用搜尋方塊在事件清單中尋找特定字串。 以下是搜尋符合四個事件之字串 名稱 的結果:

診斷事件搜尋 的螢幕快照

如需詳細資訊,請參閱 搜尋和篩選 [診斷工具] 視窗的 [事件] 索引標籤,

從命令行收集分析數據

若要從命令行測量效能數據,您可以使用 visual Studio 或 Remote Tools 隨附的 VSDiagnostics.exe。 這適用於在未安裝 Visual Studio 的系統上擷取效能追蹤,或編寫效能追蹤集合的腳本。 如需詳細指示,請參閱 從命令列測量應用程式效能