//传入一个方法等一会再掉用,和 setTimeout 查不多 //等下一个事件队列,,而且只有一个时间,setTimeout等有2个参数.node.js是在不停地检查事件队列和执行内容的 setImmediate(()=>{ console.log('setImmediate'); }); //当前序列里的事件执行完了之后,再执行它 process.nextTick(()=>{ console.log('nextTick'); });
结果输出后
,nextTick 先打印出来
F:\nodeFile\part1>node timer.js
nextTick
setImmediate
//传入一个方法等一会再掉用,和 setTimeout查不多
//等下一个事件队列,,而且只有一个时间,setTimeout等有2个参数.node.js是在不停地检查事件队列和执行内容的
setImmediate(()=>{
console.log('setImmediate');
});
setTimeout(()=>{
console.log('setTimeout')
},0);
//当前序列里的事件执行完了之后,再执行它
process.nextTick(()=>{
console.log('nextTick');
});
//setImmediate把事件放在了下一个队列的队首,nextTick把事件放在了当前队列的的队尾,大部分情况下,使用setImmediate(),它是优化的版本.
F:\nodeFile\part1>node timer.js
nextTick
setTimeout
setImmediate
如果在process.nextTick里再调用process.nextTick,就会使其他函数无法执行