perl中的内存泄漏

perl中的内存泄漏,perl,memory-leaks,Perl,Memory Leaks,下面是我使用Memory::Usage的一个测试的输出 time vsz ( diff) rss ( diff) shared ( diff) code ( diff) data ( diff) 0 264620 ( 264620) 95848 ( 95848) 8460 ( 8460) 4 ( 4) 85440 ( 85440) before 3 294668 ( 30048) 115552 ( 19704) 13728 ( 5268) 4 ( 0) 99808 ( 14368) after

下面是我使用
Memory::Usage
的一个测试的输出

time vsz ( diff) rss ( diff) shared ( diff) code ( diff) data ( diff)
0 264620 ( 264620) 95848 ( 95848) 8460 ( 8460) 4 ( 4) 85440 ( 85440) before
3 294668 ( 30048) 115552 ( 19704) 13728 ( 5268) 4 ( 0) 99808 ( 14368) after
这是否意味着我的代码有很大的内存泄漏,因为差异非常大


有人能告诉我们更好的方法来测试内存泄漏吗?

diff列表示内存消耗的变化,当它增长太多时,这不是一个好迹象


另一种测试内存泄漏的方法是。

我的理解是,假设我们调用一个分配一些内存的函数,当函数的作用域结束时,理想情况下应该释放内存,差异应该为0(意味着内存分配=内存释放)。我说的对吗?理想情况下,差异应该是0,但实际上并不总是可能的。此外,我尝试使用Test::Leaktrace,但似乎无法正确使用它,您能否指导与此模块相关的其他更好的链接?我的本斯在Devel::SizeMe()上工作过,他在YAPC上做了一次演讲:这非常有用,并将改变一些您认为您知道的关于使用Perl进行内存管理的内容。谢谢@DavidO的参考