当我检查 chrome 的 pid 时,我得到多个 pid,但如果是 firefox,我只得到一个进程 id。为什么 chrome 浏览器使用多个进程 ID?
最佳答案
Firefox 和 Chrome 在内部运作方式上存在根本差异。正如您所说,Firefox 有一个进程 ID - 因为它是一个进程。然而,Chrome 不是。
Chrome 使用 Multi-Process Architecture .这将每个网站(选项卡等)彼此隔离,以便在发生故障时它们不会相互影响或影响核心 chrome 进程。所以,如果在 Firefox 上你有一个死掉的页面,它可能会导致整个 Firefox 放弃并崩溃。然而,在 chrome 上,更有可能只有那个特定的选项卡会崩溃,而让其余选项卡和整个程序保持打开和运行状态。
请注意,这种架构更难实现并且需要更多内存。但是,它要稳定得多。
补充阅读 Material :
http://en.wikipedia.org/wiki/Process_isolation#Web_browsers
http://www.chromium.org/developers/design-documents/process-models
关于linux - Chrome 中的多个进程 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24865527/