我正在 chromium 中的 Raspberry Pi 上运行一个网络应用程序,它应该全天候运行 24/7。主要问题是它内存不足 并显示“他死了吉姆”。我想知道是否有人可以帮助我:
- 将我引导到一个 chromium 扩展程序,如果内存用完,它将重新加载/重启浏览器
- 提供一个可能的 cron 作业来检测内存何时耗尽并在出现这种情况时重新启动浏览器
目标是让 chromium 在没有人为干预的情况下每天运行。因此,我们将不胜感激任何其他方法/想法。 提前致谢!
最佳答案
我实际上发现罪魁祸首是一些 ajax 请求,每个请求每隔几秒运行一次以检查服务器是否仍在运行(这是一个很长的故事,但必须完成)。 然后我在网上找到了一个节省内存的小解决方案:将所有ajax请求放在一个变量中,然后在使用后清除该变量(我还清除了应用程序范围内未使用的java-script变量)。下面是一个示例:
function getData(){
var request = $.ajax({
url : "/someurl",
type : "HEAD",
dataType : "json",
success : function(data) {
//use your data
}
error: function(){
//doSomething
},
cache : false
});
//HERE IS THE HACK! :)
data = null;
request.onreadystatechange = null;
request.abort = null;
request = null;
}
setTimeout(function(){
getData();
}, 0.05 * 60 * 1000)
}
P.S 我在网上找到了代码。
关于linux - 在 Chrome 中处理内存不足,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22832967/