如何查找“胖”程序内存使用情况?

Posted

技术标签:

【中文标题】如何查找“胖”程序内存使用情况?【英文标题】:How to find "fat" procedure memory usage? 【发布时间】:2009-10-16 22:53:08 【问题描述】:

最近在处理我的代码时,我注意到一些内存使用量正在显着增加,我在我的代码中看不到很多原因。所以我想知道是否有任何程序、技术或其他类型的工具可以扫描我的代码(Delphi)并为我估计哪些过程、函数和函数将是最重的内存用户。理想情况下,我想我会查看在调试模式下运行的代码,但如果有东西可以扫描源文件并告诉我,那就更好了。谢谢。

【问题讨论】:

【参考方案1】:

您正在寻找的工具类型是 Profiler。大多数语言都有很多优秀的分析器。我对 Delphi 不太熟悉,所以我使用了 google,它打开了以下选项

http://www.prodelphi.de/ http://delphitools.info/

但最好的信息似乎是来自 *** 的这个问题

Delphi Profiling tools

【讨论】:

【参考方案2】:

查看我对类似问题的回答:

Memory profiling tool for Delphi?

在不知道您当前如何衡量“内存使用”的情况下,很难说什么是最好的工具。

【讨论】:

问题是,我们现在不是。 Out 应用程序被构建为尽可能动态,这就是我想开始这个过程的原因。当然,我在该领域还不够成熟,不了解分析器,但我也是我们办公室中最资深的开发人员。【参考方案3】:

我们过去使用过 AQTime,它发现了大量内存泄漏。 http://www.automatedqa.com/products/aqtime/

另一个很好的 Delphi 工具是 Eurekalog

【讨论】:

以上是关于如何查找“胖”程序内存使用情况?的主要内容,如果未能解决你的问题,请参考以下文章

如何在apache tomcat中查找Web应用程序的内存使用情况

从内存布局上看,Rust的胖指针到底胖在栈上还是堆上?

如何在 C++ 中获取 Windows 下的内存使用情况

c程序中特定函数的内存使用情况

jQuery或javascript查找页面的内存使用情况

如何使用 valgrind 查找内存泄漏?