【问题标题】:Chrome memory leak or is my type of programming defective?Chrome 内存泄漏还是我的编程类型有缺陷?
【发布时间】:2015-06-29 09:14:43
【问题描述】:

我目前在一个运行没有任何问题的网站上工作,但在 Chrome 中我发现内存使用量很大!我开始一个新标签并打开我的网站,内存使用量从 40MB 开始(我使用 chrome 任务管理器来检测内存使用情况),所以一切正常。现在我只是重新加载网站,内存显着增加。只需点击网站背景或任何没有绑定事件或任何功能的地方,也可以稍微增加内存(真的很慢

为了我的坏,例如。 YouTube 在 Chrome 中只需要 130-150 MB 并且没有这个内存问题......所以我的问题是这是哪个问题?我的意思是在除 Chrome 之外的所有其他浏览器中它都可以正常工作(我认为 Opera 和 Safari 会有同样的问题,因为它们是基于 webkit(未测试))。

在为 Chrome 编程网站以避免此类内存问题时,我有什么可以改进或应该注意的地方吗?如果有人比我更有经验(在 Web 开发的这一部分)能够给我一些建议以避免 Chrome 中的内存泄漏或内存问题,我将非常感激!

编辑 (29.06.2015):我已经尝试在 Chrome 中禁用硬件加速,但这并没有改变任何东西 - 仍然是同样的内存问题!

【问题讨论】:

  • 这类问题通常与javascript超时和循环或间隔有关。你检查过这种代码吗?这可能是原因。
  • 没有看到你的代码就无法说出你的编程类型,但是 Chrome 无论如何都会耗尽内存。例如,每个 chrome 选项卡都是一个全新的过程,会增加很多开销。它以 RAM 换取速度。我怀疑这是您的代码中的问题(如果是这种情况,其他浏览器也会受到影响)。您可以尝试删除浏览器缓存。
  • @kmsdev 我已经检查了 setTimeout 函数、没有结束的循环、间隔等等,但没有什么看起来像它导致这个问题,如果有无限循环它也会影响其他Firefox 等浏览器。
  • @Sebastian Nette 我试图删除浏览器缓存但它没有改变任何东西:-(。仍然占用大量内存。
  • 我的意思是带有超时或间隔的循环。我的意思是,如果你有一些永远不会停止的间隔,这可能是原因。的确,在其他浏览器中,ram 也应该受到影响,但 chrome 也确实喜欢吃 ram(比其他浏览器更多)。我建议您使用您的 javascript 代码更新您的问题,或者,如果可能的话,创建一个 jsFiddle。

标签: javascript jquery performance google-chrome memory-leaks


【解决方案1】:

最新版本的 Chrome 彻底修复了内存泄漏问题!

=> 版本 45.0.2453.0 dev-m

我真的希望这个版本尽快稳定下来,或者至少在我发布/发布我的网站的那一天稳定下来^^。

它似乎是一个 Chrome(我认为基于 webkit 的 Opera 和其他浏览器也有/也有这个问题)只是(内存泄漏)错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-25
    • 2014-12-25
    • 2012-07-12
    • 2021-09-01
    • 1970-01-01
    相关资源
    最近更新 更多