जेनरेटर के उपयोग के साथ और उसके बिना मेमोरी उपयोग की कल्पना करने से दक्षता लाभों को समझने में मदद मिल सकती है। नीचे दो परिदृश्यों में मेमोरी उपयोग की तुलना की गई है:
मान लें कि हमारे पास एक साधारण फ़ंक्शन है जो 0 से 999,999 तक संख्याओं की एक श्रृंखला लौटाता है। यह फ़ंक्शन सभी डेटा को एक ही बार में मेमोरी में लोड करता है।
जब फ़ंक्शन getNumbersArray को कॉल किया जाता है:
| Memory Usage Without Generators | |------------------------------------------------------| | Start | * | | | ** | | | *** | | | **** | | | ***** | | | ****** | | | ******* | | ... | ******************************************| | End | ******************************************| |------------------------------------------------------|
अब, हम एक समय में एक नंबर प्राप्त करने के लिए जनरेटर फ़ंक्शन का उपयोग करते हैं।
जब जेनरेटर फ़ंक्शन नंबर जेनरेटर को कॉल किया जाता है:
| Memory Usage With Generators | |------------------------------------------------------| | Start | * | | | * | | | * | | | * | | | * | | | * | | | * | | ... | * | | End | * | |------------------------------------------------------|
जेनरेटर एक समय में एक आइटम प्रदान करके और स्क्रिप्ट के निष्पादन के दौरान कम मेमोरी उपयोग को बनाए रखते हुए, विशेष रूप से बड़े डेटासेट के लिए महत्वपूर्ण मेमोरी दक्षता लाभ प्रदान करते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3