ऑब्जेक्ट्स के आलसी आवंटन का अर्थ क्या है और यह कैसे उपयोगी है?आलसी आवंटन क्या है?
उत्तर
आलसी आवंटन का मतलब है कि वास्तव में संसाधन की आवंटित होने तक इसका आवंटन नहीं किया जाता है। यह सिंगलटन ऑब्जेक्ट्स के साथ आम है, लेकिन कड़ाई से बोलते हुए, किसी भी समय संसाधन जितनी देर हो सके आवंटित किया जाता है, आपके पास आलसी आवंटन का एक उदाहरण है।
संसाधन की आवंटन में देरी होने तक आपको वास्तव में इसकी आवश्यकता होने तक, आप स्टार्टअप समय कम कर सकते हैं और यहां तक कि आवंटन को पूरी तरह खत्म कर सकते हैं यदि आप वास्तव में ऑब्जेक्ट का उपयोग नहीं करते हैं। इसके विपरीत, आप उस संसाधन को पूर्व-आवंटित कर सकते हैं जिसे आप बाद में आवश्यकता के लिए उम्मीद कर सकते हैं, जो बाद में निष्पादन को स्टार्टअप समय के खर्च पर अधिक कुशल बना सकता है, और कार्यक्रम निष्पादन में बाद में आवंटन आवंटन की संभावना से बचाता है।
public class Widget {
private Widget singleton;
public static Widget get() {
if (singleton == null) {
singleton = new Widget();
}
return singleton;
}
private Widget() {
// ...
}
// ...
}
कि इस कोड threadsafe नहीं है ध्यान दें है:
निम्नलिखित कोड एक lazily-आवंटित सिंगलटन का एक उदाहरण प्रदान करता है। ज्यादातर मामलों में, get()
विधि तक पहुंच कुछ फैशन में सिंक्रनाइज़ की जानी चाहिए।
एक समान (और शायद अधिक सामान्य) अवधारणा lazy initialization है।
- 1. क्या मैलोक लिनक्स (और अन्य प्लेटफॉर्म) पर आवंटन के लिए आलसी पृष्ठों का आलसी बनाता है?
- 2. आलसी तत्काल क्या है
- 3. आलसी लोडिंग क्या है?
- 4. गठबंधन स्मृति आवंटन क्या है?
- 5. आलसी वैल क्या करता है?
- 6. क्या "एकल आवंटन" बढ़ावा ::
- 7. जावा आवंटन स्मृति आवंटन
- 8. यह गतिशील आवंटन क्या करता है?
- 9. स्टैक आवंटन विफल रहता है और ढेर आवंटन सफल होता है !! क्या यह संभव है?
- 10. आवंटन
- 11. स्टेटिक आवंटन बनाम गतिशील आवंटन बनाम स्वचालित आवंटन
- 12. आलसी लोडिंग - सबसे अच्छा तरीका क्या है?
- 13. आलसी लोडिंग? क्या इससे बचना बेहतर है?
- 14. रेगेक्स: आलसी बदतर है?
- 15. आवंटन malloc
- 16. सरणी आवंटन
- 17. मेमोरी आवंटन
- 18. आवंटन और allocWithZone के बीच क्या अंतर है :?
- 19. शून्य आकार के सरणी आवंटन का क्या अर्थ है?
- 20. एसेट आवंटन adb shell dumpsys में क्या मतलब है meminfo
- 21. क्या हाइबरनेट में एक आलसी रिश्ते के लिए आलसी लोड करना संभव है?
- 22. यह आलसी क्यों नहीं है
- 23. लागू आलसी लोडिंग बनाम आलसी लोडिंग
- 24. रेल 3: आलसी लोडिंग बनाम आलसी लोडिंग
- 25. हाइबरनेट, आलसी होना या आलसी होना नहीं?
- 26. एफ # आलसी मूल्यांकन बनाम गैर-आलसी
- 27. आलसी जेपीए वनटोनी पूछताछ आलसी Fetch
- 28. क्लोजर आलसी नक्शा से आलसी नक्शा
- 29. रीशेर्पर आलसी
- 30. वालग्रिंड कहते हैं, "आवंटन ढेर," मैं कहता हूं "ढेर आवंटन"
शब्द "देर से वस्तुएं" और "आलसी init" समानार्थी हैं? इस पाठ के शीर्षक में * जावा कैसे प्रोग्राम: देर ऑब्जेक्ट्स संस्करण *? मैं googled लेकिन उस पाठ से परे कोई संदर्भ नहीं मिला। – hydeph
@hydeph, ऐसा लगता है कि डीटेल के पास उस पुस्तक के दो संस्करण हैं, जिनमें से एक "देर से ऑब्जेक्ट्स" है, जहां प्रारंभिक अध्याय प्रक्रियात्मक शैली (और बाद में कक्षाएं/वस्तुओं को प्रस्तुत करना) में हैं और एक "प्रारंभिक वस्तुओं" के साथ, जहां वर्ग/वस्तुएं तुरंत पेश किया जाता है। वे इन शिक्षण शैलियों के बीच अंतर करने के लिए "देर से वस्तुओं" और "प्रारंभिक वस्तुओं" का उपयोग कर रहे हैं। आलसी शुरुआत के लिए इसका कोई संबंध नहीं है। –