-
什么是进程?什么是线程?
进程是系统进行资源分配和调度的一个独立单位,一个进程内包含多个线程。 -
渲染进程
GUI渲染线程(页面渲染) JS引擎线程(执行js脚本的) 事件触发线程(EventLoop轮询处理线程) 事件(onclick),定时器(setTimeout),ajax(xhr)(独立线程) GUI渲染线程和JS引擎线程 互斥的
我们所谓的js为什么是单线程的?
因为多个线程同时操作dom,一个删除,一个增加,就不知道取哪个了
![在这里插入图片描述](https://img-blog.csdnimg.cn/aebe2d0ad1314d2cb33818eead2b1e51.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAaHVhbnhpYUQ=,size_20,color_FFFFFF,t_70,g_se,x_16
把一些当前js引擎执行完毕后立即执行的成为微任务
把一些等待事件到达或成功后再去执行的称为宏任务
微任务执行完毕后会取渲染页面,页面渲染完毕会去宏任务队列调取任务
引擎线程和UI线程公用一个线程,一个执行完一个执行