我有以下异步代码部分:
async.forEach(list, function(file, loopCallback) {
console.log("file");
loopCallback();
}, {
console.log("all done!");
});
它打印了我列表中所有文件的名称,太棒了。现在,我想限制并行处理的文件数量。如果我一次只想处理一个文件怎么办?
我听说过 async.ParallelLimit
和 async.Queue
,想知道如何调整此代码以适应其中之一,特别是 并行限制
。
有什么想法吗?
最佳答案
我想你需要的是eachLimit ,而不是 parallelLimit
。这是一个例子:
async.each(
list,
1, // limit
function(file, callback) {
console.log('Processing file ' + file);
callback();
},
function(err){
if( err ) {
console.log('Failed to process');
} else {
console.log('All files have been processed successfully');
}
}
);
关于javascript - 是否可以限制 Node 中的异步任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34865032/