जावा में जैसा कि हम जानते हैं कि संग्रह सबसे महत्वपूर्ण अवधारणाओं में से एक है जो जावा को अपने आप में एक शक्तिशाली भाषा के रूप में बनाता है। यह जावा में संग्रह का केवल समर्थन है जो इसे किसी भी प्रकार के डेटा को सुविधाजनक और कुशल तरीके से समर्थन करने के साथ-साथ उन पर संभावित सीआरयूडी संचालन के लिए बनाता है।
लेकिन उसी चरण में जब संग्रह बहु-थ्रेडिंग के संपर्क में आते हैं तो इसका प्रदर्शन कुछ हद तक खराब हो जाता है क्योंकि कहीं संग्रह में बहु-थ्रेडिंग वातावरण का समर्थन नहीं होता है। इस सीमा को पार करने के लिए जावा समवर्ती संग्रह पेश करता है जो न केवल बहु-थ्रेडिंग पर्यावरण सीमा को पार करता है बल्कि जावा को एकाधिक थ्रेड डेटा के साथ प्रदर्शन करने के लिए भी बढ़ाता है।
पारंपरिक संग्रह और समवर्ती संग्रह के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।
Sr.No. | कुंजी | पारंपरिक संग्रह | समवर्ती संग्रह |
---|---|---|---|
1 | धागे सुरक्षा | जावा कलेक्शंस में अधिकांश क्लासिक क्लासेस जैसे कि ऐरे लिस्ट, लिंक्ड लिस्ट, हैश मैप आदि सिंक्रनाइज़ नहीं हैं और मल्टी-थ्रेडिंग वातावरण में थ्रेड सुरक्षित नहीं हैं। | दूसरी ओर जावा समवर्ती संग्रहों में उन्हीं वर्गों का परिचय देता है जिनमें सिंक्रनाइज़ेशन लागू होता है जो न केवल इन कक्षाओं को सिंक्रोनाइज़ करता है बल्कि प्रकृति में थ्रेड सुरक्षित भी बनाता है। |
2 | लॉकिंग मैकेनिज्म | हमारे पास पारंपरिक संग्रह के साथ-साथ वेक्टर और स्टैक में कुछ सिंक्रनाइज़ कक्षाएं हैं लेकिन ये कक्षाएं पूरे संग्रह पर लॉक का उपयोग करती हैं जो प्रदर्शन और निष्पादन की गति को कम करती है। | दूसरी ओर समवर्ती संग्रह आंशिक लॉकिंग की अवधारणा का परिचय देते हैं जहां यह बहु-थ्रेडिंग वातावरण के मामले में संग्रह के केवल एक हिस्से को लॉक करता है जो ऐसे वातावरण में संग्रह के प्रदर्शन और गति में सुधार करता है। |
3 | रनटाइम अपवाद | पारंपरिक संग्रह के मामले में यदि हम संग्रह पुनरावृत्ति के दौरान अलग-अलग थ्रेड के माध्यम से संग्रह को संशोधित करने का प्रयास करते हैं तो हमें रनटाइम अपवाद ConcurrentModificationException मिला। | दूसरी ओर किसी को ऐसा अपवाद नहीं मिलेगा यदि समवर्ती संग्रह से संबंधित है यानी समवर्ती संग्रह इसके पुनरावृत्ति के दौरान संग्रह में संशोधन की अनुमति देता है। |
4 | वरीयता | उपरोक्त बिंदुओं में उल्लिखित कारणों के कारण बहु-थ्रेडिंग वातावरण में पारंपरिक संग्रह को प्राथमिकता नहीं दी जाती है। | दूसरी ओर समवर्ती संग्रह प्राथमिक रूप से बहु-थ्रेडिंग वातावरण में पसंद किए जाते हैं। |
5 | बाजार में परिचय | पारंपरिक संग्रह जावा में विरासत संग्रह के प्रकार हैं और समवर्ती संग्रह से पहले पेश किए जाते हैं। | जबकि समवर्ती संग्रह JDK 1.5 में पेश किए जाते हैं यानी पारंपरिक संग्रह के बाद पेश किए जाते हैं। |