<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:courier,monaco,monospace,sans-serif;font-size:10pt"><div style="font-family: courier,monaco,monospace,sans-serif; font-size: 10pt;">1, Check if your HTML::DOM version. Should it be updated?<br>2, Sample workaround: Do not 解析 too many pages in one process: stop and restart the process for every 1 ~ n pages.<br><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;">----- Original Message ----<br>From: rorot &lt;yang.liana@gmail.com&gt;<br>To: China-pm@pm.org<br>Sent: Friday, February 29, 2008 8:10:32 PM<br>Subject: [PerlChina] perl的内存管理问题。<br><br>
大家好,<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; 我用perl的HTML::DOM 解析约7万个HTML页面内容。结果发现没解析2,000个左右,脚本程序就出现一次崩溃。错误信息为内存占用过多,被操作系统杀死。<br><br>&nbsp;&nbsp;&nbsp; 我不知道如何去DEBUG一个perl脚本,跟踪到底那部分没有释放内存。但是可以肯定的是我的程序是运行一个sub foo()循环,这个sub里的new Object()都被我调用过object-&gt;close(),也就是文档里说的destroy操作。为什么持续运行程序,内存暴涨,从10M一直上升到580MB然后被操作系统杀死。。。<br>
<br>&nbsp;&nbsp;&nbsp; 能告诉我如何去调试一个perl程序, 或者直接找出那里出现内存泄露吗? 或者还是perl的内存管理释放内存的时间太慢???<br><br>rorot <br>Mar/01/2008<br><br>
<!-- kill --><div><br><br>-----Inline Attachment Follows-----<br><br>_______________________________________________<br>China-pm 
mailing 
list<br><a ymailto="mailto:China-pm@pm.org" href="mailto:China-pm@pm.org">China-pm@pm.org</a><br><a href="http://mail.pm.org/mailman/listinfo/china-pm" target="_blank">http://mail.pm.org/mailman/listinfo/china-pm</a></div></div><br></div></div></body></html>