2つのWebサーバーからデータを要求する必要があります。タスクは独立しています。したがって、私はaync.parallelを使用しています。今は私のウェブページの本文に「abc」、「xyz」、「Done」と書いています。Node.JSを理解するasync.parallel
タスクは同時に実行されるので、奇妙な出力に遭遇することはできますか?たとえば、
xab
cyz
コードです。
var async = require('async');
function onRequest(req, res) {
res.writeHead(200, {
"Content-Type" : "text/plain"
});
async.parallel([ function(callback) {
res.write('a');
res.write('b');
res.write('c\n');
callback();
}, function(callback) {
res.write('x');
res.write('y');
res.write('z\n');
callback();
} ], function done(err, results) {
if (err) {
throw err;
}
res.end("\nDone!");
});
}
var server = require('http').createServer(onRequest);
server.listen(9000);
「res」に書き込まれる順序は、最初にasync.parallelタスクのどちらが終了するかによって決まりますが、タスクは独立しているため、順序は関係ありません。 – Bulkan
@Bulkan、ありがとう。しかし、「並列」は適切に機能していないようです。 [新しい質問](http://stackoverflow.com/questions/20186787/node-js-async-parallel-doesnt-wait-until-all-the-tasks-have-completed)をお読みください。 –