Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Python गार्बेज कलेक्टर इंटरफेस (gc)


स्वचालित गार्बेज कलेक्शन Python की महत्वपूर्ण विशेषताओं में से एक है। गार्बेज कलेक्टर तंत्र उन ऑब्जेक्ट द्वारा कब्जा की गई मेमोरी को पुनः प्राप्त करने का प्रयास करता है जो अब प्रोग्राम द्वारा उपयोग में नहीं हैं।

Python गार्बेज कलेक्शन के लिए रेफरेंस काउंटिंग तंत्र का उपयोग करता है। Python इंटरप्रेटर इस बात की गिनती रखता है कि किसी ऑब्जेक्ट को अन्य ऑब्जेक्ट द्वारा कितनी बार संदर्भित किया जाता है। जब किसी ऑब्जेक्ट के संदर्भ हटा दिए जाते हैं, तो उस ऑब्जेक्ट की गिनती कम हो जाती है। जब रेफरेंस काउंट शून्य हो जाता है, तो ऑब्जेक्ट की मेमोरी पुनः प्राप्त हो जाती है।

आम तौर पर यह तंत्र स्वचालित रूप से किया जाता है। हालांकि, यदि प्रोग्राम में कोई विशेष स्थिति उत्पन्न होती है तो इसे जानबूझकर किया जा सकता है। 'gc' मॉड्यूल गार्बेज कलेक्शन इंटरफेस को परिभाषित करता है। 'gc' मॉड्यूल में निम्नलिखित फ़ंक्शन परिभाषित हैं

enable() स्वचालित गार्बेज कलेक्शन सक्षम करें।
disable() स्वचालित गार्बेज कलेक्शन अक्षम करें।
isenabled() यदि स्वचालित संग्रह सक्षम है तो True लौटाता है।
collect() बिना तर्क के, पूर्ण संग्रह चलाएं। वैकल्पिक पूर्णांक तर्क निर्दिष्ट करता है कि किस पीढ़ी को एकत्र करना है (0 से 2 तक)। यदि पीढ़ी संख्या अमान्य है तो ValueError उठाया जाता है। अप्राप्य ऑब्जेक्ट की संख्या लौटाई जाती है।
set_threshold() गार्बेज कलेक्शन थ्रेशोल्ड (संग्रह आवृत्ति) सेट करें।
get_threshold() वर्तमान संग्रह थ्रेशोल्ड को टपल के रूप में लौटाएं।
callbacks कॉलबैक की सूची जो गार्बेज कलेक्टर द्वारा संग्रह से पहले और बाद में लागू की जाएगी।

  1. पायथन में लो-लेवल नेटवर्किंग इंटरफ़ेस (socket मॉड्यूल) पायथन में लो-लेवल नेटवर्किंग इंटरफ़ेस (socket मॉड्यूल)

    पायथन की स्टैंडर्ड लाइब्रेरी में socket मॉड्यूल परिभाषित करता है कि सर्वर और क्लाइंट मशीनें ऑपरेटिंग सिस्टम के ऊपर सॉकेट एंडपॉइंट्स का उपयोग करके कैसे संचार कर सकती हैं। socket API में कनेक्शन-ओरिएंटेड और कनेक्शनलेस दोनों नेटवर्क प्रोटोकॉल के लिए फ़ंक्शन्स होते हैं। सॉकेट टू-वे कम्युनिकेशन लिंक का

  1. - Ruby के गारबेज कलेक्शन में गहरी डुबकी: MRI कार्यान्वयन समझाया गया

    पिछले Ruby Magic एपिसोड में हमने इस बारे में बात की थी कि हमें गारबेज कलेक्शन (GC) की आवश्यकता क्यों है और यह सामान्य रूप से कैसे काम करता है। इस पोस्ट में हम थोड़ा गहराई से देखेंगे कि यह Ruby में कैसे लागू किया गया है। विभिन्न Ruby कार्यान्वयन Ruby के कई कार्यान्वयन हैं। तीन लोकप्रिय हैं: MRI (Mat

  1. - Ruby में गारबेज कलेक्शन को समझना: भाग I

    जब भी आप अपना कोड चलाते हैं, आप मेमोरी का उपयोग करते हैं। जब आप Ruby जैसी भाषा में लिखते हैं, तो ऐसा लगता है कि आपके लिए उपलब्ध मेमोरी अनंत है। आप बिना उस सिस्टम की निश्चित मात्रा के बारे में सोचे चलते रह सकते हैं जो आपके कोड को चला रहा है। इस Ruby Magic एपिसोड में हम बताएंगे कि यह कैसे काम करता है!