0
点赞
收藏
分享

微信扫一扫

node事件循环

陆佃 2022-04-04 阅读 58
node.js

一、什么是事件循环

首先,node.js的事件循环与JavaScript的略有不同。node中事件循环使node.js可以通过将操作转移到系统内核中来执行非阻塞 I/O操作。由于大多数现代内核都是多线程的,因此它们可以处理在后台执行的多个操作。当这些操作之一完成时,内核会告诉node.js,以便可以适当的回调添加到轮询队列中以最终执行

二、事件循环图解

node.js启动时,它将初始化事件循环,处理提供的输入脚本,这些脚本可能会进行异步API调用,调度计算器,然后开始处理事件循环。

下图显示了事件循环操作顺序的简化概述

三、各阶段概述

四、大厂面试题

async function async1(){
    console.log("1")
    await async2();
    console.log("2")
}
async function async2(){
    console.log("3")
}
console.log("4")
setTimeout(()=>{
    console.log(5)
},0)
setTimeout(()=>{
    console.log("6")
},3)
setImmediate(()=> console.log("7"))
process.nextTick(()=> console.log("8"))
async1()
new Promise(function(resolve){
    console.log("9")
    resolve()
    console.log("10")
}).then(function(){
    console.log("11")
})
console.log("12")

// 4 1 3 9 10 12 8 

// 2 11

  • 关注我,后面继续发表更多底层知识哦!

举报

相关推荐

0 条评论