我正在使用perl -d:DProf来分析Perl应用程序.在生成的tmon.out文件上运行dprofpp时,我收到如下警告:
Compress::Zlib::__ANON__ has 5 unstacked calls in outer Compress::Zlib::AUTOLOAD has -5 unstacked calls in outer
>什么是未分组的电话?
>谁或什么是“外”?
>数字是什么意思?怎么会有负数的电话?
>我应该担心吗?
解决方法
我会试一试:
>未堆栈的调用表明,当DProf正在分析配置文件时,它在堆栈(在配置文件中)遇到的调用次数比预期的要多(或者更少),这意味着分析数据不正确.
>“outer”是指DProf中的内部变量%outer,它(显然)在分析配置文件时跟踪堆栈计数.
>这些数字表明DProf预计会发现多少次呼叫,而不是多少次呼叫. 5表示呼叫多于预期,-5表示减少5个.同样,这是因为配置文件数据已损坏.
>我不担心你的代码完整性,因为AFAIK这是由于DProf本身的实现中的错误.在编写tmon.out文件时,DProf似乎感到困惑.但是,由于这种不准确性,dprofpp的其余结果可能不可靠.所以,你应该担心(一点点)这些结果的准确性.
您可能希望查看备用性能分析模块,如Devel::NYTProf