我正在使用AvalonDock在C#/ .NET中编写一个编辑器。
如果我关闭文档,我的程序的内存消耗不会减少。即使我手动调用垃圾收集器。所以我假设某个地方仍然有文件的参考。
软件很庞大,文档是一个非常核心的组件,所以要找到每个引用都不容易。
Visual Studio 2010调试器是否具有在内存中搜索某个类的对象的功能?
或者,如果遇到这样的问题,你会怎么做?
答案 0 :(得分:7)
答案 1 :(得分:2)
你可以使用免费工具做你想做的事。
基本步骤如下:
我在跟踪图形密集型c#程序中的内存泄漏时,亲自使用这种技术。
我是从微软的Rico Mariani那里学到的。这是一篇博客文章,详细描述了它。 * http://blogs.msdn.com/b/ricom/archive/2004/12/10/279612.aspx
答案 2 :(得分:0)
请记住,即使.net清理自己,Windows也可能不会决定实际释放内存。通常它只在另一个应用程序实际需要内存时才这样做。所以,使用内存分析器:)