可能重复: 什么是一些好的.NET分析器? 我正在寻找优秀的.NET CLR内存分析工具。 我的关键要求是它可以很好地与IIS和独立的CLR应用程序配合使用。 理想情况下,我会看到什么对象分配,他们在哪里分配,他们是多大? 有没有人有任何好的经验,你会很乐意推荐一个特定的工具?
我有一个正常的私人工作集大约80 MB的.NET服务。 在最近的负载testing期间,进程达到了3.5 GB的内存使用量,导致整个机器在物理内存上很低(使用4 GB的3.9 GB),并且在负载testing停止后很久没有释放内存。 使用任务pipe理器,我拿了一个进程的转储文件,并在Visual Studio 2010 SP1中打开它,我可以开始debugging它。 如何诊断内存问题? 我有我的dotTrace内存3.x,它是否支持转储文件上的内存分析? 如果没有,Visual Studio 2010 Premium的内存分析function将帮助(我目前有专业人士)? WinDbg可以帮忙吗? 更新:新的Visual Studio 2013旗舰版现在可以使用转储文件本机诊断内存问题。 看到这个博客文章的更多细节。
你将如何去找出一个对象使用了多less内存? 我知道有可能找出一块代码使用了多less,而不是一个实例化的对象(它的生命中的任何时间),这是我想要的。