2017-09-25 91 views

回答

0

正如你可能已经知道的,Node.js使用的是单线程的V8(JavaScript)引擎。 I/O执行的核心是一个事件循环;当你阻塞事件循环时,它也会阻止其他事件的执行。

基本上,for循环之前执行,它开始阻塞事件循环。 setTimeout不保证您的代码在300毫秒后正好执行,但更像是>= 300 ms。更好地了解事件循环read this

-1

基本上,您的代码在单个线程中运行。 setTimeout的优先级低于您的标准代码,因此它会先执行然后(因为线程将被完成),它将从setTimeout执行您的功能。

setTimeout(milliseconds)运行函数的速度不会超过指定的毫秒数。