使用pympler识别哪些变量在python中泄漏内存

时间:2015-12-26 14:17:26

标签: python memory

我有一个内存泄漏的python脚本,我可以看到使用pympler我的字典和列表对象正在增长:

from pympler import tracker
tr = tracker.SummaryTracker()
tr.print_diff() 

但是我还没想出如何列出我的代码中有内存泄漏的变量名。有人可以帮我列出变量名称和该变量名称的代码用法吗?

由于

1 个答案:

答案 0 :(得分:2)

来自Pympler's documentation

  

可以实现跟踪某些类的对象的生命周期   与类跟踪器。这可以深入了解实例化模式   并有助于了解特定对象如何对内存做出贡献   足迹随着时间的推移:

>>> from pympler import classtracker
>>> tr = classtracker.ClassTracker()
>>> tr.track_class(Document)
>>> tr.create_snapshot()
>>> create_documents()
>>> tr.create_snapshot()
>>> tr.stats.print_summary()
              active      1.42 MB      average   pct
   Document     1000    195.38 KB    200     B   13%

这是你在找什么?