打开新标签时,谷歌浏览器究竟做了啥?

Posted

技术标签:

【中文标题】打开新标签时,谷歌浏览器究竟做了啥?【英文标题】:What does the Google Chrome exactly do when a new tab is opened?打开新标签时,谷歌浏览器究竟做了什么? 【发布时间】:2012-08-21 22:24:03 【问题描述】:

今天,我观察到一个有趣的行为。我使用的是 windows XP-sp3 操作系统。 当我在 Google Chrome 中打开一个新标签并查看任务管理器时,会创建一个新进程。 但是,一段时间后,此过程终止。

为什么会出现这种行为?是系统调用vfork()造成的吗?子进程是否立即调用exec()

这种情况是否只发生在 Google Chrome 或所有其他浏览器的行为方式类似?

【问题讨论】:

Chromium,Google Chrome 背后的开源组件,is an open-source project,这意味着您可以下载并浏览其源代码以确定其实现方式。 【参考方案1】:

AFAIK Chrome 为每个选项卡维护一个进程,也为某些插件维护一个进程。他们更喜欢多进程架构而不是多线程架构,因为当您制作始终与网络通信的网络应用程序时,您可能会收到可能导致内存混乱的数据包。因此,拥有多进程将阻止除一个进程之外的所有进程,而不是多线程会杀死选项卡。

您可以通过以下博客启发自己:

http://blog.chromium.org/2008/09/multi-process-architecture.html

【讨论】:

以上是关于打开新标签时,谷歌浏览器究竟做了啥?的主要内容,如果未能解决你的问题,请参考以下文章

怎样让谷歌浏览器一直在新标签页打开网页

谷歌浏览器打开一个新页面时使用新的标签

怎样让谷歌浏览器一直在新标签页打开网页

谷歌浏览器点击链接时经常会出现自动下载?

打开新标签 - 谷歌浏览器

如何设置谷歌浏览器打开新页面不自动跳转?