js -- even-loop 理解
2021-03-17 13:25
标签:脚本 set -- 执行 asc macro catch ota 等于 javascript 是一个单线程的脚本 js 在事件循环中分为同步任务和异步任务 同步任务:直接执行 异步任务:同步任务之后执行 js 在事件循环流程: 1>js中含有一个主线程,以及一个调用栈(也叫执行栈) 2>所有的同步任务都在调用栈中,调用栈都在主线程上执行 3>主线程之外还有要一个“任务队列”,只要异步任务有了结果,相关事件就会存放其中 4>一但主线程的 同步任务/调用栈 执行完毕,就会立即调用任务队列异步任务,放入主线程上执行 5>主线程循环 2-4流程 在js中,除了同步任务和异步任务,从另外一个角度来看,也分为宏任务(MacroTask),和微任务(MicroTask)。 MacroTask 并不等于是同步任务, 其中: MicroTask 包括: js -- even-loop 理解 标签:脚本 set -- 执行 asc macro catch ota 等于 原文地址:https://www.cnblogs.com/zhaozhenghao/p/12783691.htmlsetTimeout
、setInterval
、I/O
、UI Rendering
等都是宏任务Process.nextTick
、Promise.then catch finally
(注意不是 Promise)、MutationObserver,记住这几个其余都是宏任务
下一篇:jsoup 源码分析
文章标题:js -- even-loop 理解
文章链接:http://soscw.com/index.php/essay/65323.html