Chrome 吃掉所有 RAM 并冻结系统

Chrome 吃掉所有 RAM 并冻结系统

如何防止 chrome 占用超过 4GB 的内存。他有时会决定拿走 7GB 之类的内存(总共 8GB RAM),从而使我的计算机无法使用。

你有什么帮助吗?

PS:我什至没有打开超过10个标签。编辑:也许我做了......类似15的东西。无论如何,我希望chrome冻结或关闭而不是冻结整个系统。

答案1

我相信您会想要使用类似的方法cgroups来限制单个进程的资源使用。

所以你可能想做类似的事情除了

cgcreate -g memory,cpu:chromegroup cgset -r memory.limit_in_bytes=2048 chromegroup

创建 chromegroup 并将该组的内存使用限制为 2048 字节

cgclassify -g memory,cpu:chromegroup $(pidof chrome)

将当前的 chrome 进程移至组中,并将其内存使用限制在设置的限制内

或者只是在组内启动 chrome,例如

cgexec -g memory,cpu:chromegroup chrome

然而,chrome 一开始就使用这么多内存,这真是太疯狂了。首先尝试清除重新安装/重新编译,看看这是否不能解决问题,因为它实际上不应该使用那么多内存,而这个解决方案只是解决实际问题的创可贴。

答案2

我相信您可以使用极限值公用事业。这-d选项: ulimit(3) 手册页

即使没有,您也可以降低软限制访问服务器。

答案3

改进 Chrome 行为的另一种方法是简单地配置 JavaScript 堆限制。启动 Chrome 时将其添加到命令行:

--js-flags="--max_old_space_size=80 --max_semi_space_size=80"

这告诉 JavaScript GC 将内存使用限制在 160M 以下。当然,您可以根据具体情况更改数字。

相关内容