day85-事件循环最基本的伪代码

事件循环

通过一小段伪代码来了解一下这个“事件循环”概念。

// 事件循环伪代码
// event loop是一个用作队列的数组
let eventLoop = []
let event
// 永远执行
while (true) {
// 一次tick
if (eventLoop.length > 0) {
// 拿到队列的下一个事件
event = eventLoop.shift()
// 现在,执行下一个事件
try {
event()
} catch (error) {
reportError(err)
}
}
}
// 注意setTimeOut()并没有把你的回调函数挂在事件循环队列中,只是设定一个定时器。
// 当定时器到时后,环境会把你的回调函数放在事件循环中,这样,在未来某个时刻的tick就会摘下
// 并执行这个回调。
文章作者: lmislm
文章链接: http://lmislm.com/2019/04/06/2019-04-06/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LMISLMのBlog