У меня была реализация asyn c .queue в моем приложении node js, но функция queue.drain недавно вообще перестала работать.
Я подозревал, что проблема связана с утверждениями await, которые у меня есть внутри задачи функции, но я также могу воспроизвести проблему, используя пример на asyn c документы
const async = require('async')
var q = async.queue(function(task, callback) {
console.log('hello ' + task.name);
callback();
}, 1);
q.drain(function() {
console.log('all items have been processed');
});
q.push({name: 'bar'});
q.push({name: 'foo'}, function(err) {
console.log('finished processing foo');
});
Это выведет следующее на моей консоли, но не оператор стока. Так что я чего-то упускаю?
привет бар
привет foo
закончил обработку foo