【问题标题】:determine the type of object present in memory from a dump从转储中确定内存中存在的对象类型
【发布时间】:2014-10-20 11:24:21
【问题描述】:

我在使用大型遗留应用程序(32 位、窗口、带有 GUI 的 c++)时遇到内存问题。内存增加到最大限制(2G0)然后应用程序崩溃。 无法使用实时内存分析器(如 AQTime)(太慢,对内存消耗的影响太大)。 例如,我可以使用 windows 工具(通过任务管理器)生成转储。

问题:是否可以像在 dotnet(使用 .net Memory Profiler)中一样,从生成的转储中获得内存中存在的动态分配对象的类型?

【问题讨论】:

  • 这里的一般智慧是不要等到进程崩溃再开始寻找泄漏。不要在 C++ 应用程序上使用 .NET 工具,它们不会告诉你任何事情。如果您不能使用 crtdbg.h 中的调试分配器,那么 umhd.exe 是首选武器。

标签: c++ windows memory


【解决方案1】:

如果你已经生成了调试信息(pdb文件),就可以在一定程度上将内存映射到对象中。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-25
相关资源
最近更新 更多