refactor(util) exec.parallel

This commit is contained in:
coderaiser 2014-05-29 02:21:14 -04:00
parent d02a183d4d
commit 0f97483146

View file

@ -756,39 +756,29 @@
};
exec.parallel = function(funcs, callback) {
var i, func,
funcsCount = funcs.length,
count = 0,
allData = [];
var count = 0,
allData = [],
funcsCount = funcs.length;
for (i = 0; i < funcsCount; i++) {
func = funcs[i];
callCheckFunc(i, func);
}
funcs.forEach(function(func, num) {
exec(func, function() {
checkFunc(num, arguments);
});
});
function checkFunc(num, data) {
var i, n = data.length,
params = [];
var length = data.length;
++count;
if (n >= 2) {
for (i = 0; i < n; i++)
params[i] = data[i];
allData[num] = params;
if (length >= 2) {
allData[num] = data;
} else
allData[num] = data[0];
if (count === funcsCount)
exec.ret(callback).apply(null, allData);
}
function callCheckFunc(num, func) {
exec(func, function() {
checkFunc(num, arguments);
});
}
};
/**