Chrome为什么将我的标签分组到进程中,如何停止?


8

我注意到,至少在我看来,在Chrome浏览器中,它将所有标签分组到一个渲染器进程中。这是一个问题,因为这使Chrome很难从150k的RAM中进行排序。
是否有某种方法可以迫使它使每个选项卡成为单独的进程?

Answers:


4

根据Chrome文档,有一个--process-per-tab命令行开关可以满足您的需求。


我曾经尝试过,而且奇怪的是,实际上所有选项卡都进入了一个进程,而之前全部都处于两个进程中。可能是某些扩展使选项卡变为“脚本连接”。
digitxp 2010年

@digitxp:您是否尝试过禁用所有扩展程序或以隐身模式启动Chrome(实际上没有作用)(如果未进行其他配置)?
whitequark 2010年

3

对我来说,他们还没有解决问题。

以下是一些进一步讨论此问题的链接:

http://code.google.com/p/chromium/issues/detail?id=81877

http://www.google.com/support/forum/p/Chrome/thread?tid=2c6c5ffd1dcd19c5&hl=zh-CN

http://code.google.com/p/chromium/issues/detail?id=36617

您可以运行一个switch语句(对于那些非CLI人员,可以在控制面板中选择该选项),以每个选项卡强制执行一个新进程,但是在进一步阅读和发现之后,实际上并没有强制每个选项卡强制执行单独的进程本身。

这是铬讨论和设计文档的链接,支持铬浏览器和所有铬相关工艺模型的设计和体系结构。我猜想Android和Chrome操作系统属于类似类型的设计规范。

http://dev.chromium.org/developers/design-documents/process-models

开关的名称有点误导,因为它对我说“每个选项卡一个进程”,但实际上,它是具有相似脚本的每组选项卡一个进程,并且不断对其进行精炼并合并为一个进程的一个巨人。我的也可以获得500到800 MB以上的内存。仅用于单个进程的内存就差不多了。它使我的计算机停止运行。更重要的是,可能是因为所有内存都被分页了,但是无论哪种方式,如果每个选项卡是一个单独的进程,则至少内存和分页操作在整个板上都将有所不同,从而实质上将负载分配给了CPU和内存(包括分页)。

Chromium还支持一种更简单的模型,该模型将一个渲染器进程专用于每组脚本连接的选项卡

开源“铬”项目中有关“单选项卡单进程”模型的说法:

“ Chromium还支持一种更简单的模型,该模型将一个渲染器进程专用于每组脚本连接的选项卡。”

Chromium将创建的渲染器进程数量存在全局限制。这样可以防止浏览器通过过多的进程使用户的计算机不堪重负。目前,在大多数计算机上,该限制是20个渲染器进程,而在安装了少量内存的计算机上,限制是更少。结果,单个渲染器过程可能专用于多个站点。目前,这种重用是随机进行的,但是Chromium的未来版本可能会应用启发式方法,以更智能地将站点分配给渲染器进程。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.