下面是我正在使用的一段代码及其输出。
my $handle;
my $enterCount = Devel::Leak::NoteSV($handle);
print "$date entry $enterCount";
<<<< my piece of code >>>
my $leaveCount = Devel::Leak::CheckSV($handle);
print "$date exit $leaveCount";
输出:
1)
Mon 11/10 02:34:55 entry 383852
Mon 11/10 02:35:03 exit 486726
2)
Mon 11/10 04:00:31 entry 383852
Mon 11/10 04:00:39 exit 493216
3)
Mon 11/10 04:05:15 entry 383852
Mon 11/10 04:05:23 exit 493927
每次我运行我的脚本时,$enterCount
值都是相同的,而 $leavecount
值不断增加。这意味着什么?它是否代表内存泄漏?它具体显示了什么?
最佳答案
您可以从 @ether 查看这些 SO 引用:
- Finding a Perl memory leak
- Are there any tools for finding memory leaks in my Perl program?
- Common Perl memory/reference leak patterns?
Github 上的 jkeroes 有一个列表 resources关于 perl 内存泄漏。
Devel::Gladiator
有助于大致了解正在发生的事情 - 您可能会修改代码以适应 POD 的概要示例。
关于perl - 了解开发::泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26843505/