वादा-आधारित संचालन के लिए पुन: प्रयास पैटर्न
वादे जावास्क्रिप्ट में अतुल्यकालिक संचालन को संभालने का एक सुविधाजनक तरीका प्रदान करते हैं। हालाँकि, कभी-कभी ऑपरेशन को कई बार या एक विशिष्ट स्थिति पूरी होने तक पुनः प्रयास करना आवश्यक होता है।
1. वादा हल होने तक पुनः प्रयास करना
किसी ऑपरेशन का समाधान होने तक लगातार पुनः प्रयास करने के लिए, पुनः प्रयास और पुनर्प्रयास की अधिकतम संख्या के बीच विलंब का उपयोग करें। इसे फॉर लूप और .कैच() चेनिंग का उपयोग करके प्राप्त किया जा सकता है:
for (var i = 0; i 2. शर्त पूरी होने तक पुनः प्रयास करना
परिणाम पर एक शर्त पूरी होने तक किसी ऑपरेशन का पुनः प्रयास करने के लिए, स्थिति की जांच करने के लिए .then() श्रृंखला का उपयोग करें और विफलताओं को संभालने के लिए .catch() श्रृंखला का उपयोग करें:
for (var i = 0; i 3. मेमोरी-कुशल गतिशील पुनः प्रयास पैटर्न
असीमित पुनः प्रयास और एक निर्दिष्ट विलंब के साथ एक गतिशील पुनः प्रयास तंत्र के लिए, .catch() श्रृंखला दृष्टिकोण का उपयोग करें:
var p = Promise.reject();
while (true) {
p = p.catch(attempt).catch(rejectDelay);
// Break out of the loop if the condition is met.
if (conditionMet) break;
}
नोट:
- पुनः प्रयास के लिए .catch() श्रृंखला दृष्टिकोण में प्रयासों की अधिकतम संख्या और मेमोरी खपत के संबंध में सीमाएं हैं।
- जटिल पुनर्प्रयास परिदृश्यों के लिए, पुनरावर्ती समाधानों या उद्देश्य-निर्मित पुनर्प्रयास पुस्तकालयों का उपयोग करने की अनुशंसा की जाती है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3