【问题标题】:Memory profiling in Visual Studio 2013Visual Studio 2013 中的内存分析
【发布时间】:2013-10-19 22:11:41
【问题描述】:

我想探索在我的应用程序中是如何分配内存的。我有 C# 控制台应用程序并使用 Visual Studio 2013 Professional。

我去 Analyze -> Performance and Diagnostics 并选择 .NET 内存分配

因此,我得到以下摘要:

在图表中每次的 CPU 使用率(%)。但是我怎样才能看到每次分配内存和 GC 事件呢?我在这里找不到。

【问题讨论】:

标签: .net visual-studio visual-studio-2013


【解决方案1】:

我在 msdn 博客上读到,此检查工具并非面向内存泄漏检查,因此没有为未来版本计划的此类功能。这适用于大型堆检查。

http://blogs.msdn.com/b/dotnet/archive/2013/04/04/net-memory-allocation-profiling-with-visual-studio-2012.aspx

大约是 2012 年,但似乎还没有改变。

【讨论】:

    【解决方案2】:

    除了@L.Trabacchin 的回答之外,您还应该看看 JetBrains 的 dotMemory(以前的 dotTrace Memory,见该页底部)。有一个试用版,根据我的个人经验,我不能推荐它。这是一个非常有用的工具。

    【讨论】:

    • 我也喜欢很多蚂蚁内存分析器!同样的事情,免费试用 :)
    【解决方案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 终极版 中的转储摘要页面中可用。如果您使用的是高级版或专业版,您将看不到该选项
    2. 收集转储文件的进程必须在 .NET 4.5 或更高版本上运行。如果转储是在 3.5 或更早版本收集的,则不会出现该选项,如果它是在 4.0 上收集的,它将无法启动并显示错误消息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多