我的基于浏览器的应用程序崩溃chrome选项卡,我的扩展程序崩溃Chrome浏览器?怎么样?

时间:2014-04-08 16:00:41

标签: javascript html5 google-chrome google-chrome-extension

我已经编写了一个基于浏览器的应用程序,可以无限期地运行。遗憾的是,几个小时后(约2-6小时),它几乎可以保证崩溃Chrome标签。

我的代码中可能存在内存泄漏,或者我正在使用的某些库,或者它可能是与我正在使用的一些较新的Chrome功能(如WebRTC)相关的Chrome错误。这是一个复杂的应用程序,我最初尝试找到泄漏失败。

尝试自动将页面重新加载到可用内存并避免崩溃

我尝试通过强制浏览器每2小时重新加载(后来减少到1)来解决这个问题,认为这应该释放任何泄露的内存并避免问题;该应用程序是有状态的,因此重新加载不是一个真正的问题。

重新加载并没有解决问题,标签仍会崩溃,但现在似乎保证在6-36小时范围内崩溃更多。

尝试使用Chrome扩展程序重新加载已崩溃的标签

我打算启动Chrome扩展程序,以便在网站和Chrome之间添加更好的集成,因此我在新扩展程序中添加了一些代码,以查找并重新加载我的标签,如果发现它已加载但崩溃了。我认为这样有效,但现在24到48小时内,整个谷歌浏览器崩溃了“哇哇!谷歌已经崩溃了”。

从奇怪的变为荒谬的我只是创建了一个小的Windows应用程序(AHK脚本)来查找崩溃的Chrome消息并重新启动Chrome。显然,我只剩下一步,建立一个全新的操作系统来监控监控应用程序,并在监控应用程序失败时重新启动操作系统......

但严重的是......我对Chrome不了解什么?这是怎么回事?我应该强调,我写的小扩展几乎没有。我无法想象它如何能够打倒浏览器。它只是监视我崩溃的选项卡,并有一个内容脚本,让我在注册或登录时自动注册用户帐户的扩展名。我没有看到它维护任何状态或缓存信息或任何可能耗尽内存或导致其他问题的事情。

因为碰撞很少发生,所以我很难搞清楚发生了什么。

对不起,我知道这个问题很模糊,我只是绝望地想要任何人可能拥有的见解。我找不到类似的问题。

谢谢!

(由于网站未正式启动,我无法共享网站或代码。鉴于此问题的性质,我认为这不应该是一个问题。)

1 个答案:

答案 0 :(得分:4)

因为你正在寻找见解..

您是否打开Chrome开发工具(控制台等)?

如果是,他们将不断消耗资源记录网络请求等。

这可能是泄漏/崩溃的原因。我用chrome扩展程序遇到过一次。除非绝对必要,否则不要让它们一直开着。

尝试诊断崩溃。

  • 从chrome:// crashes page

  • 开始
  • 如果这样做无效,请尝试在Chrome中查找崩溃日志 个人档案夹。

  • 如果仍然无效,请尝试使用logging enabled运行Chrome。

尝试使用其他(较新)版本

如果您使用的是Windows或OS X,请尝试安装Google Chrome Canary(接近前沿版本)并查看问题是否仍然存在。