【问题标题】: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,这意味着您可以下载并浏览其源代码以确定其实现方式。

标签: google-chrome process operating-system browser fork


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-15
    • 1970-01-01
    • 2013-08-05
    • 1970-01-01
    • 2012-07-23
    • 2016-09-10
    • 2023-03-15
    相关资源
    最近更新 更多