संग्रह को डिबग करते समय मोडकाउंट चर क्या करता है जब संग्रह चर के लिए एक्लिप्स का उपयोग करते हुए जावा कोड डीबग करते समय, मैंने modcount
सदस्य देखा। इसका क्या मतलब है?संग्रहण
संग्रहण
उत्तर
जावा के कई संग्रह इटरेटर्स उत्पन्न करते हैं जो "असफल-तेज" होते हैं, जिसका अर्थ है कि अगर पुनरावृत्ति के बाद संग्रह बदल जाता है, तो इटरेटर को अमान्य कर दिया जाएगा और ConcurrentModificationException
जितनी जल्दी हो सके फेंक देगा। (बाद में विफल होने या अमान्य डेटा लौटने की तुलना में।)
इस कार्यक्षमता का समर्थन करने के लिए, संग्रह को ट्रैक करना है कि इसे संशोधित किया गया है या नहीं। प्रत्येक बार संग्रह बदल जाता है, यह modcount
में वृद्धि करता है। जब संग्रह एक पुनरावर्तक उत्पन्न करता है, तो इटेटरेटर modcount
के मूल्य को तब से संग्रहीत करता है जब इसे बनाया गया था। फिर जब भी आप इटरेटर का उपयोग करने का प्रयास करते हैं, तो यह देखने के लिए जांचता है कि modcount
मूल संग्रह के वर्तमान modcount
से अलग है या नहीं; यदि ऐसा है, तो इटेटरेटर ConcurrentModificationException
के साथ विफल रहता है।
यह वास्तव में अच्छा विवरण के लिए
- 1. पृथक संग्रहण
- 2. पृथक संग्रहण
- 3. आंतरिक संग्रहण
- 4. सरल पृथक संग्रहण समस्या
- 5. Azure Blob संग्रहण
- 6. Azure Table संग्रहण समाप्ति
- 7. लुआ: कचरा संग्रहण + userdata
- 8. स्थानीय संग्रहण मूल्य
- 9. इकाई परीक्षण डेटा संग्रहण
- 10. एंड्रॉइड एक्सेस बाहरी संग्रहण
- 11. Google क्लाउड संग्रहण प्रचार
- 12. डेटाबेस संग्रहण: दशमलव (? 2,)
- 13. कचरा संग्रहण गारंटी
- 14. बहु और कचरा संग्रहण
- 15. Azure टेबल संग्रहण:
- 16. कब कचरा संग्रहण
- 17. ब्लॉब और संग्रहण आवश्यकता
- 18. स्रोत नियंत्रण में पासवर्ड संग्रहण
- 19. SQLite डेटाबेस अधिकतम संग्रहण क्षमता
- 20. अत्यंत लंबे कचरा संग्रहण बार
- 21. सी # कचरा संग्रहण का संदर्भ
- 22. Azure संग्रहण तालिका का आकार
- 23. आंतरिक संग्रहण से फ़ाइल हटाएं
- 24. स्थानीय डेटाबेस संग्रहण डिफ़ॉल्ट डेटा
- 25. * निक्स कॉन्फ़िगरेशन फ़ाइल संग्रहण सम्मेलन?
- 26. बैकअप Azure Blob संग्रहण सामग्री
- 27. कई लॉग फ़ाइलों का संग्रहण
- 28. एचटीएमएल 5 स्थानीय संग्रहण निरंतर
- 29. ऐप रिपोर्टिंग गलत उपयोग/संग्रहण
- 30. SQLite डेट संग्रहण और रूपांतरण
धन्यवाद (इस नियम का अपवाद है कि इटरेटर ही (इटरेटर के
remove
विधि की तरह के माध्यम से किया संग्रह के लिए संशोधन) इटरेटर को अमान्य नहीं है। है)। मुझे पता था कि यह ऐसा कुछ किया है, लेकिन विस्तृत नहीं – moeTiबहुत अच्छी व्याख्या। अब यह समझ में आता है। –
कोड: http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/util/ArrayList.java#ArrayList.ListItr – roottraveller