首页 > 系统相关 >浏览器进程

浏览器进程

时间:2023-02-08 22:55:07浏览次数:35  
标签:插件 浏览器 渲染 js 线程 进程

有哪些进程和线程

  • 浏览器进程(1个):浏览器的主进程,负责协调。
  • GPU进程(1个):用于3D绘制等,将开启了3D绘制的元素的渲染由CPU转向GPU,也就是开启GPU加速。
  • 网络进程(1个):用于网络资源的加载。
  • 音频进程(1个):音频管理。
  • 渲染进程(多个):浏览器内核,内部是多线程的。默认一个tab页面对应一个渲染进程,内部多线程。
    • GUI渲染线程:负责渲染浏览器截面,包括解析HTML、CSS,构建DOM树、渲染树,布局和绘制。当界面需要重绘或回流时,该线程就会执行。与JS引擎互斥。
    • JS引擎线程:负责解析、运行js脚本程序。一直等待任务队列中的任务到来,然后加以处理。
    • 事件触发线程:用于控制事件循环。
    • 定时触发线程:用于为setInterval、setTimeOut计时。
    • 异步HTTP请求线程(IO线程):XMLHttpRequest连接后通过浏览器新开一个线程请求。
  • 插件进程(多个):使用插件时创建,每种类型的插件对应一个进程。

多进程的好处

  1. 避免单个页面奔溃影响整个浏览器;
  2. 避免第三方插件奔溃影响整个浏览器;
  3. 充分利用多核优势;
  4. 方便使用沙河模型隔离插件等进程,提高浏览器稳定性;

思考:为什么专门设立一个事件触发线程用于管理事件循环

事件源除了来自js代码,还来自用户点击、网络响应。而js引擎线程用于执行js代码,没法及时接收事件。

标签:插件,浏览器,渲染,js,线程,进程
From: https://www.cnblogs.com/hdxg/p/17103648.html

相关文章

  • 进程通讯
    进程间通信(IPC)你知道进程间通信方式有哪几种吗?某种方式具体原理?进程是一个独立的资源分配单元,不同进程之间是独立的,没有关联,不能在一个进程直接访问另一个进程的资源......
  • 进程分类
    进程退出#include<stdlib.h>voidexit(intstatus);#include<unistd.h>void_exit(intstatus); status:是进程退出时的一个状态信息。父进程回......
  • 进程
    进程一、简介:进程是运行在内存中的程序,是执行程序的一个过程。一个进程有输入、输出、程序和状态。操作系统实现进程是维护一张有着所有进程的表格,该表格采用双向链表实......
  • 进程创建
    fork进程创建创建子进程,会复制当前的父进程子进程和父进程运行在分开的内存空间,但是在fork()时两者有相同的内容fork:用于创建子进程#include<sys/types.h>......
  • linux查看进程信息
    top实时查看进程信息,展示进程id,使用内存,占用cpu等信息,可以查看内容占用最多、cpu使用最多的进程,然后再根据进程id查看进程的详细信息。实时更新ps瞬时查看进程情况,ps-e......
  • 进程通信
    进程通信1、什么是进程间通信2、共享存储3、消息传递1)直接通信方式2)间接通信方式4、管道通信知识回顾......
  • 进程间的通信方式(六种)
    目录前言管道消息队列共享内存信号量信号Socket参考文章:https://blog.csdn.net/qq_34827674/article/details/107678226前言前提知识:每个进程都有自己的用户空间,而......
  • 进程基础知识
    程序和进程程序:(文件)进程:(资源)并行与并发并行:同一时刻,有多条指令在多个处理器上同时执行并发:在同一时刻只能有一条指令执行,但多个进程指令被快速轮换,使得宏观上具有......
  • 刷新浏览器 提示确定是否可以刷新
    window.onbeforeunload=function(e){constdialogText='cancel?';e.returnValue=dialogText;returndialogText;};useEffect(()=>{window.......
  • 进程与线程
    一、进程与线程的概念;           进程的解释:     二、进程和线程之间的关系:         谷歌浏览器的架构图:   ......