美文网首页
js同步异步、事件循环(宏观任务、微观任务)

js同步异步、事件循环(宏观任务、微观任务)

作者: WarmladyYY | 来源:发表于2020-07-15 14:03 被阅读0次

    我们都知道JavaScript 是单线程,同一个时间只能做一件事。所有任务需要排队,当前队列的任务也分为两种,一种是同步任务(synchronous),另一种是异步任务(asynchronous),在所有同步任务执行完之前,任何的异步任务是不会执行的。

    事件=>同步=>异步

    其中异步任务中又分为 宏任务(macrotasks)、微任务(microtasks),执行到异步任务时先执行宏任务,把宏任务放入Event Queue,然后在执行微任务,在将微任务放入Event Queue (这里要注意一点微任务和宏任务Event Queue是两个不同的空间)   等到回调的时候是先微任务然后在宏任务

    执行:宏任务=>微任务  callback : 微任务=>宏任务

    宏任务包括:整体代码 script,setTimeout,setInterval

    微任务包括:Promise,process.nextTick

    相关文章

      网友评论

          本文标题:js同步异步、事件循环(宏观任务、微观任务)

          本文链接:https://www.haomeiwen.com/subject/aobdhktx.html