Node.js
नोडज में तुल्यकालिक बनाम अतुल्यकालिक प्रोग्रामिंग
खोज…
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