2

我正在阅读一些关于内存泄漏的文章。我遇到了一些工具,例如:

  1. perfmon+debugdiag 这是默认的 windows 工具
  2. AMD 代码分析师
  3. 在 C++ 的 stadx.h 文件中包含 debug_new
  4. 带有 SOS dll 的wingdb
  5. 还有一些付费工具。

我想知道perfmon+debugdiag是否足以检测所有内存泄漏?或者在某些情况下是否有其他更好的工具。我想知道什么时候用什么。

假设我有一个调用第 3 方非托管 dll 的 C# 应用程序。如何找到第 3 方 DLL 中的泄漏?

4

2 回答 2

1

到目前为止,我用于此任务的最佳工具是.NET Memory Profiler

于 2012-10-11T15:38:59.930 回答
1

用于此目的的一个非常好的工具是 Red Gate 的 ANTS Memory Profiler:http ://www.red-gate.com/products/dotnet-development/ants-memory-profiler/features/

我已经成功地将它用于托管 DLL,但它也可以分析 COM+ 应用程序。

于 2012-10-11T16:37:49.533 回答