खोज…


Async का उपयोग करना

Async पैकेज अतुल्यकालिक कोड के लिए कार्य प्रदान करता है।

ऑटो फ़ंक्शन का उपयोग करके आप दो या अधिक कार्यों के बीच अतुल्यकालिक संबंधों को परिभाषित कर सकते हैं:

var async = require('async');

async.auto({
    get_data: function(callback) {
        console.log('in get_data');
        // async code to get some data
        callback(null, 'data', 'converted to array');
    },
    make_folder: function(callback) {
        console.log('in make_folder');
        // async code to create a directory to store a file in
        // this is run at the same time as getting the data
        callback(null, 'folder');
    },
    write_file: ['get_data', 'make_folder', function(results, callback) {
        console.log('in write_file', JSON.stringify(results));
        // once there is some data and the directory exists,
        // write the data to a file in the directory
        callback(null, 'filename');
    }],
    email_link: ['write_file', function(results, callback) {
        console.log('in email_link', JSON.stringify(results));
        // once the file is written let's email a link to it...
        // results.write_file contains the filename returned by write_file.
        callback(null, {'file':results.write_file, 'email':'[email protected]'});
    }]
}, function(err, results) {
    console.log('err = ', err);
    console.log('results = ', results);
});

इस कोड को सही क्रम में get_data , make_folder , write_file और email_link कहकर समकालिक रूप से बनाया जा सकता था। Async आपके लिए परिणामों का ट्रैक रखता है, और यदि कोई त्रुटि हुई ( callback असमान का पहला पैरामीटर null करने के लिए) तो यह अन्य कार्यों के निष्पादन को रोक देता है।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow