我们的应用程序消耗大量内存,我们需要确定哪个函数会导致内存的最大使用量。他们以任何方式甚至任何现有工具来做这件事(Windows,Native)?
以下是环境:
Windows Xp
VS2008
Native C ++(基于MFC)
非常感谢。
答案 0 :(得分:3)
如果您有Visual Studio 2008 Team System,则可以使用built-in memory allocation分析器。这是一篇很好的MSDN文章Find Application Bottlenecks with Visual Studio Profiler使用VS2008。还有一个分析器blog。
ValGrind(免费)
编辑:既然您已更新以表明C ++,请同时查看此SO answer。
另见:
答案 1 :(得分:0)
使用分析器。例如Automated QA的AQTime - http://www.automatedqa.com/products/aqtime/index.asp。
答案 2 :(得分:0)
大多数工具/分析器仅在.NET应用程序上运行,在您的情况下是n / a
我已经使用Boundschecker和Purify来检查本机应用程序的内存泄漏/内存分析(它们有试用版AFAIK)但如果你只对一次性感兴趣,你也可以使用内置函数来实现这个目的分析
在您的在线帮助中查找_crtCheckMemory以获取起始位置。