我们如何检测COM Interop应用程序中的内存泄漏?

时间:2011-03-26 16:53:00

标签: c# memory-leaks com-interop

使用COM互操作的C#winform应用程序检测内存管理问题的最佳方法是什么。引用了COM程序集,其方法用于许多计算和事务。

是否有任何工具可以识别加载到内存但未卸载的对象[interop]。

2 个答案:

答案 0 :(得分:1)

COM组件的RCW只是一个托管类。任何半开发的.NET内存分析器都会向您显示任何无意中引用的内容。如果COM服务器本身泄漏,那么您将需要一个可以跟踪非托管内存的服务器。这总是需要拥有服务器的源代码,以便您可以准确找出泄漏的内容。并实际做点什么。

关于.NET内存分析器已经有很多问题了。在右上角的搜索框中键入“.NET memory profiler”。

答案 1 :(得分:0)

尝试使用AQTime探查器,我玩了一段时间,它有非管理(com)和托管应用程序的好的分析器,你可以从这里下载thw demo: http://smartbear.com/products/development-tools/performance-profiling/sign-up/