我正在编写一个应用程序,惊讶地发现它的总内存使用量已经太高了。 我想对我的应用程序进行动态内存使用分析:堆中有多少个各种类型的对象,以及创建这些对象的函数是哪些?此外,每个对象使用了多少内存?
有没有简单的方法可以做到这一点?我在Linux和Windows上都在工作,所以任何一个平台的工具都可以。
注意:我在这里不关心内存泄漏。
我正在编写一个应用程序,惊讶地发现它的总内存使用量已经太高了。 我想对我的应用程序进行动态内存使用分析:堆中有多少个各种类型的对象,以及创建这些对象的函数是哪些?此外,每个对象使用了多少内存?
有没有简单的方法可以做到这一点?我在Linux和Windows上都在工作,所以任何一个平台的工具都可以。
注意:我在这里不关心内存泄漏。
《游戏编程宝典2》(Game Programming Gems Volume 2,Amazon link)第1.10章详细介绍了Peter Dalton设计的一种简单而有效的Drop-in Debug Memory Manager。当你转储日志时,它提供了一组不错的统计数据。