【发布时间】:2026-01-15 00:50:01
【问题描述】:
我希望从大型 Python 代码库中生成函数运行过程中堆使用或内存分配的摘要。
我熟悉 heapy,它对我在代码中的特定点获取堆的“快照”很有帮助,但我发现很难生成“随时间变化的内存”摘要用它。我也玩过line_profiler,但它适用于运行时,而不是内存。
我现在的后备方案是带有massif 的 Valgrind,但它缺少 Heapy 和 line_profiler 提供的大量 Python 上下文信息。后两者是否存在某种组合,可以在 Python 程序的执行范围内提供内存使用或堆增长的感觉?
【问题讨论】:
-
如果你关心的事情发生在 C 世界,你能用docs.python.org/devguide/gdb.html 做吗?
-
如果有办法定期自动运行 gdb - 有这样的方法吗?
-
一个好问题,我很想知道,所以我加了一个赏金。