我正在看看Node.js'async
模块来解决问题。我实现了一个小测试:是否调用Node.js的async.parallel()同步?
var async = require("async");
function print(val) {
console.log(val);
}
async.parallel([
function(cb){ print(1); cb(null); },
function(cb){ print(2); cb(null); },
function(cb){ print(3); cb(null); },
function(cb){ print(4); cb(null); },
function(cb){ print(5); cb(null); }
],
function(err) {
if (err) {
console.error(err);
return;
}
console.log("Done!");
}
);
console.log("Trulu");
我可以肯定的说是完成于async.parallel
前调用Trulu日志调用将永远不会被调用?换句话说,所有的函数以及在确定调用Trulu日志之前调用的最终回调函数?
这不会回答你的问题,我是知道的,但我想说你可以把你的东西包装在一个承诺中,以确保它 – Sprottenwels
我想如果你想确保它是在回调之后,你可以让你的函数在回调中写入日志。但是我没有看到它和完成之间的区别!日志 – CubanAzcuy
如果你被困在async.js中,它有一个系列的方法可以做你想做的事情。 –