सी स्टैंडर्ड लाइब्रेरी के साथ बोहेम कचरा कलेक्टर का उपयोग करना
बहु-थ्रेडेड सी अनुप्रयोगों को विकसित करते समय, बोहेम का रूढ़िवादी कचरा कलेक्टर मेमोरी को सरल बनाने के लिए उपयोगी हो सकता है प्रबंधन। यह सवाल उठाता है कि Boehm GC को C मानक लाइब्रेरी की कक्षाओं जैसे std::map और std::vector के साथ कैसे एकीकृत किया जाए।
एक दृष्टिकोण में Boehm के कार्यान्वयन का उपयोग करने के लिए वैश्विक ऑपरेटर ::new को फिर से परिभाषित करना शामिल है। हालाँकि, एक अधिक सीधा समाधान मानक लाइब्रेरी संग्रह टेम्पलेट्स में आवंटनकर्ता टेम्पलेट तर्क को स्पष्ट रूप से निर्दिष्ट करना है। &&&]std::vector
std::vector में दूसरे टेम्पलेट तर्क का उपयोग वेक्टर की आंतरिक डेटा संरचना के आवंटन को नियंत्रित करने के लिए किया जाता है, न कि व्यक्तिगत तत्वों के लिए।
std::vector> my_vector;
std::basic_string
वैकल्पिक रूप से, कोई सीधे GC_malloc_atomic के साथ वर्णों की सरणी प्रदान कर सकता है।
संक्षेप में, std::vector, std::string, और अन्य मानक लाइब्रेरी कक्षाओं के साथ Boehm GC का उपयोग करना संभव है gc_allocator टेम्पलेट तर्क निर्दिष्ट करना। ऑपरेटर को पुनः परिभाषित करना ::new आवश्यक नहीं है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3