1

以下のように async.parallel() を使用すると、何らかの理由で「yyyyyyyyy」文字列が出力されません。どうしてこれなの?他の2つが呼び出されたら、最後の関数が呼び出されると思いました。

var async = require('async');
async.parallel([
    function() {
        console.log('xxxxxxxxxxx');
    },
    function() {
        console.log('ccccccccccc');
    }
], function(err, results){
    console.log('yyyyyyyyy');
});
4

1 に答える 1

3

functionに最初のパラメーターで渡されたものはすべて、完了したことを認識したときに呼び出すasync.parallelを受け取る必要があります。callbackasync

var async = require('async');
async.parallel([
    function(callback) {
        console.log('xxxxxxxxxxx');
        callback();
    },
    function(callback) {
        console.log('ccccccccccc');
        callback();
    }
], function(err, results){
    console.log('yyyyyyyyy');
});

のいずれかでエラーが発生した場合は、 withfunctionsを呼び出す必要があります。callback

callback(err);

エラーが発生したことをasync認識し、すぐに last を呼び出しますfunction

于 2013-08-12T03:45:41.957 に答える