是唯一的方法来断开WWW :: Mechanize :: Firefox与mozrepl对象的破坏吗?

时间:2013-09-20 09:16:41

标签: perl www-mechanize mozrepl

正如标题所说,我正在尝试创建一个perl守护程序,在长时间运行时,我希望在资源使用方面保持理智。

我见过的所有示例/文档似乎都没有提及断开会话的方法。

我可以在WWW::Mechanize::Firefox::Troubleshooting找到的有关该主题的最佳文档 建议对象(和连接?)保持活动直到全局破坏。

简而言之,我看到没有'断开'功能,并想知道我是否遗漏了什么。

1 个答案:

答案 0 :(得分:0)

断开似乎是通过析构函数来处理的。 Perl为此使用了特殊的DESTROY方法。不建议手动调用此方法。

您需要减少$mech对象的引用计数,以便自动销毁它。当变量超出范围时,在过程结束时的全局销毁阶段,或者(在对象的情况下),通过为变量分配不同的东西,例如

,就会发生这种情况。
$mech = undef;

要完全取消分配任何变量,您还可以

undef $mech; # which btw is the answer provided in the FAQ you linked

这种差异很微妙,在这种情况下无关紧要。