में मेमोरी उपयोग और कचरा संग्रह ट्रैकिंग ट्रैकिंग मैं उन कार्यों को चला रहा हूं जो गहराई से घोंसले हुए हैं और विंडोज़ टास्क मैनेजर द्वारा रिपोर्ट की गई स्मृति का काफी उपभोग करते हैं। आउटपुट वैरिएबल अपेक्षाकृत छोटे होते हैं (उपभोग की मात्रा की तुलना में परिमाण के 1-2 ऑर्डर छोटे होते हैं), इसलिए मुझे लगता है कि अंतर को फ़ंक्शन में कहीं भी इंटरमीडिएट वेरिएबल्स (या उप-फ़ंक्शंस कहा जा रहा है) के लिए जिम्मेदार ठहराया जा सकता है और कचरा संग्रह में देरी तो, मेरे प्रश्न हैं:आर
1) क्या मेरी धारणा सही है? क्यों या क्यों नहीं?
2) क्या इंटरमीडिएट चर निर्दिष्ट करने के बजाए अधिक गहराई से काम करने के लिए केवल घोंसले कॉल में कोई समझ है? क्या यह स्मृति उपयोग को कम करेगा?
3) मान लीजिए कि एक परिदृश्य जिसमें आर 4 जीबी रैम वाली प्रणाली पर 3 जीबी मेमोरी का उपयोग कर रहा है। जीसी() चलाने के बाद, अब यह केवल 2 जीबी का उपयोग कर रहा है। ऐसी परिस्थिति में, क्या आर कचरा संग्रह चलाने के लिए पर्याप्त स्मार्ट है, अगर मैंने कहा कि एक और समारोह कहा जाता है जो 1.5 जीबी मेमोरी का इस्तेमाल करता है?
ऐसे कुछ डेटासेट हैं जिनके साथ मैं काम कर रहा हूं, जो सिस्टम को क्रैश करने में सक्षम हैं क्योंकि यह संसाधित होने पर स्मृति से बाहर हो जाता है, और मैं इसे कम करने की कोशिश कर रहा हूं। किसी भी जवाब के लिए अग्रिम धन्यवाद!
जोश