正如标题所说,我正在尝试创建一个perl守护程序,在长时间运行时,我希望在资源使用方面保持理智。
我见过的所有示例/文档似乎都没有提及断开会话的方法。
我可以在WWW::Mechanize::Firefox::Troubleshooting找到的有关该主题的最佳文档 建议对象(和连接?)保持活动直到全局破坏。
简而言之,我看到没有'断开'功能,并想知道我是否遗漏了什么。
答案 0 :(得分:0)
断开似乎是通过析构函数来处理的。 Perl为此使用了特殊的DESTROY
方法。不建议手动调用此方法。
您需要减少$mech
对象的引用计数,以便自动销毁它。当变量超出范围时,在过程结束时的全局销毁阶段,或者(在对象的情况下),通过为变量分配不同的东西,例如
$mech = undef;
要完全取消分配任何变量,您还可以
undef $mech; # which btw is the answer provided in the FAQ you linked
这种差异很微妙,在这种情况下无关紧要。