[英]Perl memory leak from match operator
在調查長時間運行的perl程序以檢查內存泄漏時,我嘗試使用Test :: LeakTrace 。
查看泄漏之一,它報告我可以將泄漏代碼縮小為:
/$?/
這樣運行: perl -MTest::LeakTrace::Script -e'/$?/'
打印:
從-e第1行泄漏了SCALAR(0x10d3d48)。
為什么會這樣,我需要擔心嗎?
更新:還嘗試了Devel :: LeakTrace :: Fast ,它不是在抱怨相同的代碼。
假設您有泄漏。 然后這樣:
perl -e'/$?/ for 1..1E9'
應該使您的過程在內存中增長
ps -o rss,vsz <PID>
就我而言,它一直保持穩定。 您應該檢查它的設置。 您的模塊檢測到的泄漏可能是一些后期破壞。 您可以給模塊作者寫一個注釋,以幫助您弄清其輸出,可以幫助他們改進它。
順便說一句,對我來說,確認“沒有泄漏”的另一件事是
perl -MTest::LeakTrace::Script -e'/$?/ for 1..1000'
我看不到多個泄漏的標量,只有一個。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.