Node.js async.queue不起作用

我有这个非常简单的程序,输出应该是“富”,然后“巴兹”,但由于某种原因,“巴兹”不是打印在屏幕上。 我犯了什么错误?

var async = require('async'); var q = async.queue(function (task, callback) { console.log(task.message); }, 1); q.push({ message : "foo" }, function (err) {}); q.push({ message : "baz" }, function (err) {}); 

您必须在队列中调用callback

 var q = async.queue(function (task, callback) { console.log(task.message); callback( ); }, 1); 

这样它通知队列,它完成了任务,队列可以跳到另一个。

你只是放弃了

 callback() 

试试这个对我有用:

 var async = require('async'); var q = async.queue(function (task, callback) { console.log(task.message); callback(); }, 1); q.push({ message : "foo" }, function (err) {}); q.push({ message : "baz" }, function (err) {});