जैसा कि नव निर्मित वस्तु को नई पीढ़ी के लिए आवंटित किया गया है। क्या यह संभव है कि नव निर्मित वस्तु को पुरानी या कार्यरत पीढ़ी को आवंटित किया जाए? यदि यह है, तो किस आधार पर?क्या पुरानी पीढ़ी में कोई ऑब्जेक्ट बनाया जा सकता है?
उत्तर
देखें "Frequently Asked Questions about Garbage Collection in the HotspotTM JavaTM Virtual Machine":
क्या कभी पुराने पीढ़ी में सीधे आवंटित करने के वस्तुओं?
1.4.1 में दो स्थितियां जहां आवंटन सीधे पुरानी पीढ़ी में हो सकता है।
यदि कोई आवंटन युवा पीढ़ी में विफल रहता है और ऑब्जेक्ट बड़ी सरणी है जिसमें वस्तुओं के लिए कोई संदर्भ नहीं है, तो यह सीधे पुरानी पीढ़ी में आवंटित किया जा सकता है। कुछ चुनिंदा उदाहरणों में, इस रणनीति का उद्देश्य युवा पीढ़ी से आवंटित युवा पीढ़ी के संग्रह से बचने के लिए किया गया था।
एक ध्वज (1.4.2 और बाद में उपलब्ध) एल-एक्सएक्स: प्रीटेनर साइज थ्रेसहोल्ड = जिसे युवा पीढ़ी में आवंटन के आकार को सीमित करने के लिए सेट किया जा सकता है। इस से अधिक आवंटन युवा पीढ़ी में प्रयास नहीं किया जाएगा और इसलिए पुरानी पीढ़ी से आवंटित होगा।
1 के लिए दहलीज आकार 64k शब्द है। के लिए डिफ़ॉल्ट आकार PretenureSizeTreshold 0 है जो कहता है कि किसी भी आकार को युवा पीढ़ी में आवंटित किया जा सकता है।
1.4.2 मामले में 1) 64k शब्द दहलीज वृद्धिशील संग्राहक (-Xincgc) के लिए सच है। डिफ़ॉल्ट कलेक्टर और समवर्ती संग्राहक (-XX: + UseConcMarkSweepGC) के लिए थ्रेसहोल्ड मान बदल दिया गया है ताकि पुरानी पीढ़ी में आवंटित करने का प्रयास केवल तब होता है जब आवंटन का आकार पूरे युवा पीढ़ी से बड़ा होता है (खाली जगह होने पर उपलब्ध स्थान)। यह देखा गया था कि ऐसे मामले थे जहां डिफ़ॉल्ट कलेक्टर और समवर्ती संग्राहक के लिए 1.4.1 रणनीति केवल पूर्ण संग्रह तक पहुंच रही थी (कोई युवा पीढ़ी संग्रह नहीं किया जा रहा था)। हमने माना कि थ्रेसहोल्ड बढ़ाने के लिए पर्याप्त खराब है।
इसे मिला। धन्यवाद दोस्त। :) –
यह बिल्कुल सही नहीं है, यहां चेकआउट करें: http://stackoverflow.com/questions/24618467/size-of-huge-objects- प्रत्यक्ष रूप से- आवंटित-to-old-generation/24618819?noredirect=1#comment38154886_24618819 –
- 1. पुरानी पीढ़ी में वस्तुओं का आंकड़ा?
- 2. कोई उपयोगकर्ता ऑब्जेक्ट के बिना चयन ऑब्जेक्ट बनाया जा सकता है?
- 3. क्या इसे प्रोलॉग में पूंछ-रिकर्सिव बनाया जा सकता है?
- 4. क्या मेवेन कम वर्बोज़ बनाया जा सकता है?
- 5. पुरानी स्थिति क्या है?
- 6. एसक्लाइट में भौतिक दृश्य कैसे बनाया जा सकता है?
- 7. क्या कोई ऑब्जेक्ट गलत हो सकता है?
- 8. MATLAB में कोई फ़ंक्शन बनाया जा सकता है जो कुछ भी नहीं देता है?
- 9. AVD नहीं बनाया जा सकता ठीक विकलांग
- 10. क्या कोई ऑब्जेक्ट बनाया गया है जब कोई प्रारंभकर्ता फेंकता है?
- 11. क्या .NET में कोई OpenFileOrFolderDialog ऑब्जेक्ट है?
- 12. स्थिर रचनाकारों को गैर-निजी कैसे बनाया जा सकता है?
- 13. क्यों इसे बनाया जा सकता है HttpContext नकली?
- 14. कस्टम node.js एडन बनाया जा सकता है लेकिन
- 15. यह कैसे SwingWorker कोड परीक्षण योग्य बनाया जा सकता है
- 16. क्यूटी :: यह कितना छोटा बनाया जा सकता है?
- 17. क्या रूबी में सरणी को फिर से बनाया जा सकता है?
- 18. लिंक बनाया जा रहा संगम
- 19. क्या कोई तोड़ सकता है कि स्थानीयकरण फ़ाइल (.mo, .po) पीढ़ी कैसे काम करती है?
- 20. ओरेकल: कोई डेटा पाया जा सकता है
- 21. अंतिम ऑब्जेक्ट को संशोधित किया जा सकता है लेकिन संदर्भ चर को बदला नहीं जा सकता
- 22. सी # में फैक्टरी पैटर्न: ऑब्जेक्ट इंस्टेंस को सुनिश्चित करने के लिए केवल फ़ैक्टरी क्लास द्वारा ही बनाया जा सकता है?
- 23. क्या कोई सत्रस्टोर ऑब्जेक्ट के जीवन को समझा सकता है?
- 24. Cpython में क्या किया जा सकता है जो IronPython में नहीं किया जा सकता है?
- 25. एक multitenancy प्रणाली में RabbitMQ में कतार कैसे निजी/सुरक्षित बनाया जा सकता है?
- 26. "तीसरी पीढ़ी स्केल" क्या है?
- 27. एएसपी.नेट एमवीसी 3 नियंत्रण/घटक कैसे बनाया जा सकता है जिसे अन्य अनुप्रयोगों द्वारा पुन: उपयोग किया जा सकता है
- 28. क्या कोई ऑब्जेक्ट कॉपी कन्स्ट्रक्टर
- 29. ग्रहण - "उपयोग में कार्यक्षेत्र या बनाया नहीं जा सकता है, एक अलग चुना है।"
- 30. जब कोई ऑब्जेक्ट स्कोप से बाहर हो जाता है तो कोड चलाया जा सकता है .Net?
आपको चिंता या चिंता करने की ज़रूरत नहीं है कि कचरा कलेक्टर कैसे काम करता है। – Wug