我查看了GDB文档,但没有找到任何可行的或显示我需要的东西:我的应用程序使用的最大内存量。
我正在使用MinGW-w64(适用于Windows的GCC),如果相关的话。我想以编程方式喜欢的东西,而不是“查看你的任务管理器”。另外:我的应用程序一次性执行,它不会停止或停止在任何地方,我想保持这种方式。
谢谢!
答案 0 :(得分:1)
你可以包装malloc / free或new / delete: How-to-profile-memory-usage-of-a-c-program
因此,您可以随时检查您正在使用的内存量(堆)。
答案 1 :(得分:0)
Windows提供函数来返回正在使用的内存量。
http://msdn.microsoft.com/en-us/library/aa366589(v=VS.85).aspx
答案 2 :(得分:0)
标准没有指定比malloc()
和free()
更深的内容,这使得C库可以自由地实现它们在目标环境中工作。结果是,像GDB这样没有绑定到特定环境的调试器将无法深入了解内存分配。