ASP.NET内存泄漏 - OracleConnection / OracleCommand

时间:2012-07-17 09:53:22

标签: asp.net windbg

我遵循了以下教程中的建议:http://humblecoder.co.uk/tag/windbg。我必须指出说,运行这个命令:!dumpheap。我在第三列中添加了总字节数,再将其除以1024和1024。这相当于42MB。有问题的ASP.NET进程大小超过1.5GB。

如果没有在任务管理器中创建转储文件的选项,则在Windows 2003服务器上完成此操作。因此,我必须运行以下cmmand:.dump / ma w3wpdump.dmp。由于这是一个小型转储,是否有缺少的东西可以帮助?

昨天我确实提出了另一个问题,其中概述了问题:ASP.NET Memory Leak - OracleCommand Object

1 个答案:

答案 0 :(得分:0)

看看你的另一个问题,你的大部分内存使用都被字符串使用了。我会转储一些字符串来查看它们内部的内容。您可以使用dddbdu查看字符串的内容,并为其提供字符串实例之一的内存地址。即dd 0x12345678,它将转储位于那里的内存的原始内容。您可以查看windbg帮助以获取有关d*命令的更多信息。

但是,如果您确定托管堆似乎没有消耗内存,那么我会查看非托管堆。 !heap -s将为您提供非托管堆的摘要,这可能是您使用多余内存的地方。