浏览器进程

Browser进程: 浏览器主进程

​ 负责浏览器界面显示、管理, 如前进、后退、新增、关闭, 网络资源下载和管理。

GPU进程: 负责浏览器的3D渲染

插件进程: 浏览器插件, 每个插件一个进程

Renderer 渲染进程: 每个页面一个简称互不影响, 执行事件处理、脚本执行、页面渲染

​ Renderer 渲染进程 (浏览器内核, 多线程)

  • GUI渲染线程: 负责html css 构成Dom树,渲染页面 ,比如重绘
  • JS引擎线程: JS内核,chrome的V8引擎, 负责解析执行JS代码
  • 事件触发线程: 点击事件绑定回调时, 触发后放到宏任务队列
  • 定时触发器线程:
  • 异步HTTP请求线程: 存在 回调函数 放到宏任务队列

JS线程 和 GUI线程 是互斥的,EventLoop每一次宏任务的 结束, JS线程 都会交互一次, 耗时的js 任务可以使用webWoker线程处理, 通过postMessage API通讯;