all-of-javascript icon indicating copy to clipboard operation
all-of-javascript copied to clipboard

最浅显易懂的 Process.nextTick 和 setImmediate 的区别

Open cbbfcd opened this issue 7 years ago • 1 comments

from https://www.zhihu.com/question/23028843

A()
B()
C()

first

A()
process.nextTick(B)
C()

next

A()
setImmediate(B)
C()

next

cbbfcd avatar Sep 05 '18 13:09 cbbfcd

setImmediate()属于check观察者,其设置的回调函数,会插入到下次事件循环的末尾,每次事件循环只执行链表中的一个回调函数。

process.nextTick()所设置的回调函数会存放到数组中,一次性执行所有回调函数。执行时机在下轮tick开始前

cbbfcd avatar Nov 02 '18 06:11 cbbfcd