CNode

求教process.nextTick() 的使用场景?

问答
Llvgithub发布于9 年前最后回复9 年前4 回复4685 浏览0 收藏
exports.findByUsername = function(username, cb) {
  process.nextTick(function() {
    for (var i = 0, len = records.length; i < len; i++) {
      var record = records[i];
      if (record.username === username) {
        return cb(null, record);
      }
    }
    return cb(null, null);
  });
}

是不是在处理数据库等耗时操作时,使用process.nextTick() ,可以提高系统的并发量

查看回复

回复 (4)

G
gjc9620#1·9 年前

等主线程跑完了再跑 还是要跑的 直接查数据库不好? = = 这循坏的。。

Z
zhhb#2·9 年前

比如你创建了一个对象,这个对象继承了EventEmitter, 而且这个对象创建后后立马emit了一个消息,但是这个时候还没监听这个事件怎么办,一般的做法就是用process.nextTick 推迟放到当前事件轮询队尾,即下次事件轮询前执行;

参与回复
登录后即可参与回复。登录