2014-02-22 58 views
2

我一直在尋找一些關於我正在開發的項目的性能分析報告。我已經查看了許多選項,並且我以前親自使用過dotTrace和ANTS,但決定在構建剖析一個鏡頭時使用Visual Studio。Visual Studio 2012 - Performance Profiling Prism應用程序

到目前爲止,它似乎很不錯。不得不跳過一些環節才能在第一時間運作,但現在運行良好。

我遇到的問題是我的項目是一個使用PRISM的複合WPF應用程序,這意味着在EXE文件和駐留在Module類庫項目中的大多數邏輯之間沒有靜態引用。

這不是我第一次看到一些通常非常好的工具會被複合應用程序弄糊塗,所以我不打算對這個剖析器進行保留。但是,這確實意味着我想要在應用程序中進行配置的90%實際上被排除在報告之外,並且仍然完全沒有配置。沒有幫助。

我有我感興趣的所有庫添加到Instrumentation會話,所以它已準備好去解決這個問題,它似乎沒有按照到我的模塊內部的執行路徑。

是否有人設法使用DirectoryLookupModuleEnumerator(無靜態參考)方法成功完全分析了PRISM應用程序?

回答

3

哈!紙板開發商再次出擊!

在我的特定情況下,另外一個複雜因素是我編譯的應用程序不在通常的bin\Debug位置。每個項目都將自身和任何依賴關係複製到一個完全獨立的位置(類似於我猜測的部署),然後在調試時從那裏執行。

我所做的得到這個工作:

  1. 通常討厭簽署後有心計獲得強名稱發揮很好

  2. 相反的操作嚮導來只需點擊開始性能分析分析菜單

  3. 這將開始性能分析和笑在您的啓動項目屬性頁面中,請遵守任何調試設置。

  4. 回到您開始的Visual Studio 2012/2013實例。在目標

  5. 右鍵單擊性能資源管理面板節點。

  6. 選擇添加目標二進制,然後在文件瀏覽器選擇編譯的模塊構成您的應用程序

  7. 的合成部分運行你的應用程序,你想,然後選擇停止分析當你」重做。

  8. 探索,看看你的代碼是多麼糟糕! :)

注意:最後一步是可選的。

+1

+1好的和有用的帖子 –

相關問題