2017-10-10 209 views
-2

我們在C#中開發了一個windows服務。我們需要確定其性能瓶頸,例如 - 哪個功能需要更長的時間,我們如何改進它。如何識別C#程序的性能瓶頸

我們試圖用 -

  1. Procdump - 這使我們的進程轉儲文件和

  2. DebugDiag資料 - 我們可以通過這個閱讀報告格式轉儲文件和

  3. Perfmon - 內置窗口工具

你能su提供任何更好的免費/付費工具,這可以幫助識別從服務中獲取功能的大多數時間,如果可以提供改進它們的提示,那麼它是很好的。

預先感謝您!

+0

我已經使用了Resharper dotTrace,它工作的很好,如果這有幫助... – Isma

+1

標題是一個有趣的問題,但不幸的[要求工具/軟件推薦是在這裏脫離主題](https://stackoverflow.com /幫助/上話題) – Pac0

回答

1

Visual Studio內置了性能分析器。它可以連接到正在運行的進程。

您可以在Analyze/Performance Profiler下找到它,然後使用大按鈕更改目標。

它會給你每個函數被調用多少次,每行代碼花了多少時間,以及在其他許多統計數據中花了多少時間進行垃圾收集。