【问题标题】:Call garbage collect in visual studio在 Visual Studio 中调用垃圾收集
【发布时间】:2015-11-24 22:25:32
【问题描述】:

是否可以通过 Visual Studio 2015 Enterprise 在调试会话期间收集 gc?

我想在调用GC.Collect() 时观察我的应用程序的内存使用情况,但只是为了进行一些调试。因此,在调试应用程序期间从 Visual Studio 调用它会非常有帮助。

非常感谢!

【问题讨论】:

  • 什么样的数据?为什么 GC 会负责收集任何类型的数据?您想查看 GC 调用吗?你看过 Visual Studio 中的性能分析工具吗?
  • 这听起来像是一个 X-Y 问题。您是否有需要解决的特定问题?
  • 很抱歉措辞不好,我会纠正这个问题。
  • 小心 :) 根据您运行的是程序的调试版本还是发布版本,您可能会得到不同的结果。
  • 感谢您提供的信息。当前阅读:markfalto.com/Blog/post/…

标签: c# visual-studio garbage-collection visual-studio-2015


【解决方案1】:

您可以在即时窗口中写GC.Collect()

【讨论】:

  • 只是提示:在以后的 Visual Studio 版本中,不再有即时窗口。您可以通过在调试时按“Break”并在监视窗口中输入GC.Collect() 来实现相同的目的。
  • 立即窗口可从 Debug |窗户 |立即 菜单项。 Ctrl + Alt + I
【解决方案2】:

在断点期间,您可以使用“立即窗口”发出命令,只需执行GC.Collect()

【讨论】:

    【解决方案3】:

    您可以使用 Visual-Studio Shortcut for Tools.ForceGC:

    Ctrl+Shift+Alt+F12, Ctrl+Shift+Alt+F12

    Doku 和更多 VS 2015 的快捷方式参见:https://msdn.microsoft.com/en-us/library/da5kh0wa.aspx

    在这里找到解决方案:https://blogs.msdn.microsoft.com/camerons/2010/12/15/force-vs-to-garbage-collect/

    【讨论】:

      【解决方案4】:

      在您的代码中放置一个断点。当执行到达断点时,在即时窗口中运行 System.GC.Collect(); 您可以在诊断工具中看到已应用垃圾收集。

      【讨论】:

        猜你喜欢
        • 2016-12-05
        • 1970-01-01
        • 2011-01-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-10
        相关资源
        最近更新 更多