浏览器中包含什么?三个常驻线程?
Posted ashen1999
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浏览器中包含什么?三个常驻线程?相关的知识,希望对你有一定的参考价值。
浏览器基础结构主要包含七个部分:
- 用户界面:用户所看到的内容和与之交互的功能组件,比如按钮、表单等等
- 浏览器引擎:负责控制和管理下一级的渲染引擎
- 渲染引擎:解析用户请求的内容并返回
- 网络:负责处理网关相关事宜,比如http服务
- UI后端:负责绘制一些提示框等UI组件,底层使用的是操作系统的用户接口
- js解析器:负责解析和执行js代码
- 数据存储:负责存储数据如cookie等
浏览器是多线程的,js是单线程的,浏览器至少包含三个常驻线程:
js引擎线程:基于事件驱动单线程执行
GUI渲染线程:负责渲染浏览器界面。但是js引擎线程和GUI渲染线程是互斥的,当js引擎线程进行时,GUI渲染线程会暂停,直到js引擎线程结束才继续,这也就是js阻塞
事件触发线程:当事件被触发后,会把事件添加到任务队列的最尾端,等待js引擎处理执行
以上是关于浏览器中包含什么?三个常驻线程?的主要内容,如果未能解决你的问题,请参考以下文章