Node程序员的技术日常

nextTick、setImmediate、promise.re

2017-03-06  本文已影响231人  我就是L
setImmediate(function () {
    console.log(7)
});
setTimeout(function () {
    console.log(1)
}, 0);
process.nextTick(function () {
    console.log(6)
    process.nextTick(function () {
        console.log(8)
    })
});
new Promise(function executor(resolve) {
    console.log(2);
    for (var i = 0; i < 10000; i++) {
        i == 9999 && resolve();
    }
    console.log(3);
}).then(function () {
    console.log(4);
});
console.log(5);
//执行队列(同步) 2 3 5   6 8
//任务队列(异步) 4 (1,7)
function timeout() {//一直重复tick
    setTimeout(() => test(), 0);
}

function tick() {// 霸占执行队列,事件循环无法进入
    process.nextTick(()=>p());
}

上一篇 下一篇

猜你喜欢

热点阅读