2013-10-19 37 views
12

我想了解如何在我的應用程序中分配內存。我有C#控制檯應用程序並使用Visual Studio 2013專業版。Visual Studio 2013中的內存分析

我去分析 - >性能比較和診斷和選擇.NET內存分配

enter image description here

結果我得到以下總結:

enter image description here

在圖表中CPU使用率(%)每次。但是,我怎麼能看到每次分配內存和GC事件?我在這裏找不到它。

+0

這是使用RC還是RTM? – rhughes

+0

使用RTM版本 – Alexandr

+0

如果從摘要視圖切換,您應該能夠看到分配。然而,作爲VS 2013的一部分,您現在可以對轉儲進行內存分析。這裏是鏈接http://blogs.msdn.com/b/visualstudioalm/archive/2013/06/20/using-visual-studio-2013-to-diagnose-net-memory-issues-in-production.aspx –

回答

4

添加到@ L.Trabacchin的答案,你應該看看JetBrains的dotMemory(以前的dotTrace內存,請參閱該頁面的底部)。有一個試用版,從我個人的經驗來看,我不能推薦它。這是一個非常有用的工具。

+0

感謝您的建議! – Alexandr

+0

我也喜歡很多螞蟻記憶分析器!同樣的事情,免費試用:) –

3

本博客文章提供了有關如何通過分析VS 2013中的轉儲文件來分析內存泄漏的信息,但有一些要求在下面突出顯示。 http://blogs.msdn.com/b/visualstudioalm/archive/2013/06/20/using-visual-studio-2013-to-diagnose-net-memory-issues-in-production.aspx

要使用在這篇文章中討論的「調試託管內存」功能:

  1. ,則該選項只可從在Visual Studio 2013的終極版的轉儲摘要頁面。如果您使用Premium或Professional,則不會看到選項
  2. 轉儲文件收集的進程必須在.NET 4.5或更高版本上運行。如果轉儲是在3.5或之前收集的,則該選項將不會顯示,如果在4.0上收集該選項,將無法啓動並顯示錯誤消息。
+0

感謝您的信息! – Alexandr