我有一個非常複雜的擴展名,但我會簡化問題,可以輕鬆地複製。鉻擴展內存豬基本功能
manifest.json的:
{
"name": "script",
"version": "1.0",
"description": "script",
"browser_action": {
"default_icon": "icon.jpg"
},
"permissions": [
"tabs",
"http://www.google.com/"
],
"background_page" : "background.html",
"content_scripts":[
{
"matches":["http://www.google.com/"],
"js":["/jquery.js","/script.js"]
}
] }
的script.js:
var item = null;
restart();
function restart() {
item = null;
item = new Object();
item.Go = Go;
item.Go();
}
function Go() {
setTimeout(function() { restart(); }, 5);
}
background.html:什麼也不做,現在
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://code.jquery.com/jquery-1.4.2.min.js" language="javascript" type="text/javascript"></script>
</head>
<body>
</body>
</html>
現在,當我的項目應該做的非常簡單...刷新頁面,抓取數據,將結果發佈到本地jsonp Web服務,重複。我遇到了chrome選項卡和擴展程序內存問題,可以通過在chrome中按SHIFT + ESC來查看擴展程序。運行上述Chrome擴展,您可以慢慢看到頁面大小不斷增加。通過上面的示例,您可以看到該選項卡增加,但擴展內存使用量不會增加,直到事情變得更加困難。
爲什麼內存使用量會不斷增加,唯一發生的事情是正在創建的項目,然後一次又一次地失效?不應該從內存中清除對象嗎?
我想你可能已經簡化了太多。刮取的數據發生了什麼? – mraaroncruz 2010-08-11 01:58:41