V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
rokeyzki
V2EX  ›  Android

关于 Android Chrome 所采用的进程模型

  •  1
     
  •   rokeyzki · 2019-09-23 10:45:38 +08:00 · 10112 次点击
    这是一个创建于 1886 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景

    我们知道,Chromium 内核支持四种将 web 页面分配到 render 进程的模型,分别是:

    • Process-per-site-instance
    • Process-per-site
    • Process-per-tab
    • Single-Process

    桌面端的 Chrome 基于 Chromium 内核,现在默认采用的进程模型是 Process-per-site-instance,即同域和其链开的网页都属于同一进程,各自的 web 网站运行在各自进程中(最开始是用 Process-per-site,我也忘了是哪个版本改成 Process-per-site-instance )

    问题

    因为我对 Android 不够了解,印象中 Android 好像是一个应用默认一个主进程,然后启动后有一个 UI 线程和两个 Binder 线程,那么请问 Android 端 Chrome 是否因此跟桌面端 Chrome 不同,而是采用单进程模式来运行?( Single-Process,类似 PC 端 360 极速浏览器的做法)

    5 条回复    2019-09-25 23:32:01 +08:00
    gzxu
        1
    gzxu  
       2019-09-23 13:05:48 +08:00 via Android
    没记错的话 Chrome 里面有 1 到 16 编号的一堆 Service,估计是用来开多进程用的
    honeycomb
        2
    honeycomb  
       2019-09-23 13:15:18 +08:00 via Android
    Android 的 chrome 也能启用 strict isolation,而且目前已经默认启用,因此目前比较可能是 process per site instance 的模式。超出进程限制的可能会以某种缓存的形式放在墓碑里。
    menyakun
        3
    menyakun  
       2019-09-23 19:49:20 +08:00
    我猜测是 isolated process
    yukiww233
        4
    yukiww233  
       2019-09-25 14:03:29 +08:00   ❤️ 1

    这样独立进程的 service 有 40 个
    rokeyzki
        5
    rokeyzki  
    OP
       2019-09-25 23:32:01 +08:00
    @yukiww233 非常感谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2950 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 14:35 · PVG 22:35 · LAX 06:35 · JFK 09:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.