JavaScript事件循环机制和NodeJS时间循环机制

2022-11-27  本文已影响0人  Poppy11

JavaScript事件循环机制

image.png

一、是什么?

JavaScript是一门单线程语言,同一时间只能做一件事,但并不意味着单线程就是阻塞,而实现单线程非阻塞的方式就是事件循环。

JavaScript中,所有的任务都可以分为:

image.png

从上面可以看出,同步任务进入主线程,异步任务进入任务队列,主线程内的任务执行完毕为空,会去读取任务队列对应的任务,推入主线程执行。上述过程不断重复就是事件循环机制。

二、宏任务与微任务

异步任务又分为宏任务与微任务

微任务

微任务

image.png

执行宏任务时,遇到微任务就放入微任务任务队列中,当宏任务执行完成后,会查看微任务的事件队列,然后将微任务依次执行完,再进行循环执行下一个宏任务。

NodeJS事件循环机制

image.png
上一篇下一篇

猜你喜欢

热点阅读