美文网首页
node定时器

node定时器

作者: 海豚先生的博客 | 来源:发表于2020-06-22 09:36 被阅读0次

    执行流程

    image.png

    本轮循环结束后执行

    process.nextTick
    Promise 微任务队列

    下轮循环执行

    setTimeout、setInterval、setImmediate 宏任务队列

    // 一般先输出1,后输出2,但不全是
    // 参考流程图,先timers,后check Handlers
    setTimeout(() => console.log(1));
    setImmediate(() => console.log(2));
    const fs = require('fs');
    // 肯定先输出2,后输出1
    // 参考流程,文件读取先I/O callbacks,poll阶段执行2个回调,
    // 接下来是check handlers,下次循环开始执行timers
    fs.readFile('test.js', () => {
      setTimeout(() => console.log(1));
      setImmediate(() => console.log(2));
    });
    

    相关文章

      网友评论

          本文标题:node定时器

          本文链接:https://www.haomeiwen.com/subject/hagtfktx.html