无法使用ANTS内存分析器检测内存泄漏

时间:2015-06-16 14:51:39

标签: c# .net memory-leaks memory-profiling ants

我有一个自定义应用程序,允许打开一些自定义模型。 如果我在应用程序中打开一个模型,那么打开另一个模型 - 内存不会从第一个模型中释放。

当我尝试使用分析器(ANTS内存分析器)分析内存泄漏时,应用程序释放内存,我无法跟踪泄漏。我该如何处理这个问题? Memory usage chart from profiler

1 个答案:

答案 0 :(得分:3)

当您拍摄快照时,ANTS内存分析器会执行完整的垃圾回收。

如果要拍摄快照,我通常会拍摄2-3张快照,直到两个连续快照之间没有内存差异。然后与基本快照进行比较。

转到实例列表,查看是否有任何实例正在增长。选择带有源的对象以摆脱系统对象的堆。

如果有任何增长的实例,请选择一个并查看对象保留图,该图将准确显示哪个实例包含该引用。

此外,请确保您已正确实施IDisposable并处理所有一次性对象并取消订阅所有活动订阅。

看看下面的演练

http://www.red-gate.com/products/dotnet-development/ants-memory-profiler/walkthrough http://www.red-gate.com/products/dotnet-development/ants-memory-profiler/