加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何在Perl中获取调用堆栈列表?

发布时间:2020-12-15 21:28:07 所属栏目:大数据 来源:网络整理
导读:有没有办法我可以访问(打印输出)一个子模块的列表到任意深度的子调用在Perl脚本中的当前位置之前? 我需要更改一些Perl模块(.pm的)。工作流从网页通过cgi脚本启动,将输入传递到在需要使用数据的模块中结束的多个模块/对象。在沿线的某处,数据变了,我需要
有没有办法我可以访问(打印输出)一个子模块的列表到任意深度的子调用在Perl脚本中的当前位置之前?

我需要更改一些Perl模块(.pm的)。工作流从网页通过cgi脚本启动,将输入传递到在需要使用数据的模块中结束的多个模块/对象。在沿线的某处,数据变了,我需要找出在哪里。

解决方法

你可以使用 Devel::StackTrace。
use Devel::StackTrace;
my $trace = Devel::StackTrace->new;
print $trace->as_string; # like carp

它的行为像鲤鱼的痕迹,但你可以得到更多的控制框架。

一个问题是引用被字符串化,如果引用的值改变,你将不会看到它。然而,你可以打开一些东西与PadWalker打印出完整的数据(这将是巨大的,虽然)。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读