- Source:
Examples
// array
var called = 0;
var tasks = [
function(done) {
setTimeout(function() {
called++;
done(null, '1');
}, 30);
},
function(done) {
setTimeout(function() {
called++;
done(null, '2');
}, 20);
},
function(done) {
setTimeout(function() {
called++;
done(null, '3');
}, 10);
}
];
async.race(tasks, function(err, res) {
console.log(res); // '3'
console.log(called); // 1
setTimeout(function() {
console.log(called); // 3
}, 50);
});
// object
var called = 0;
var tasks = {
'test1': function(done) {
setTimeout(function() {
called++;
done(null, '1');
}, 30);
},
'test2': function(done) {
setTimeout(function() {
called++;
done(null, '2');
}, 20);
},
'test3': function(done) {
setTimeout(function() {
called++;
done(null, '3');
}, 10);
}
};
async.race(tasks, function(err, res) {
console.log(res); // '3'
console.log(called); // 1
setTimeout(function() {
console.log(called); // 3
done();
}, 50);
});