[已解决]事件循环和js执行是不是两个线程?
发布于 10 年前 作者 huangnaiang 4810 次浏览 最后一次编辑是 8 年前

原问题: node启动就会进入事件循环,每个tick都会询问各个观察者(如定时器观察者,网络请求观察者)有没有完成的事件需要执行回调。

这个事件循环的线程和js执行的线程不是同一个吧? 不然js会一直被阻塞

答案: 已经想通了。node程序所有逻辑都是在事件循环里面执行的,从程序入口开始就已经是第一个事件的回调函数了。js的执行线程其实就是事件循环的线程

2 回复

是同一个线程。 会不会阻塞要看你在代码中是否写了阻塞式调用。如果你写了阻塞调用,那肯定会阻塞的。 不信你在代码中写个for循环看看

恩 已经想通了 所有js代码的执行都是在事件循环中执行的

回到顶部