事件循环之浏览器异步机制

为什么浏览器可以执行异步任务。

浏览器是多线程的。

浏览器给js引擎线程准备的线程为主线程,还有http请求线程==

浏览器有多个进程

* 浏览器进程

* 渲染进程

* GPU进程

* 网络进程

* ...

每一个tab标签页都是一个渲染进程。

执行栈 与 任务队列每一次循环称之为tick

熟悉事件循环 + 了解浏览器运行机制 —>  js的执行过程 

微任务只有一个队列

宏任务有多个队列

Promise.then 回调存在V8的一个队列中 没有多线程参与 严格意义上说promise.then不能完全算是异步任务

主线程代码执行效率的提高

事件循环是由宿主来实现的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容