जब आप कई थ्रेड्स द्वारा एक्सेस किया जाएगा एक सॉर्ट किए गए कंटेनर की आवश्यकता होती है, तो ConcurrentSkipListSet और ConcurrentSkipListMap उपयोगी होते हैं। ये अनिवार्य रूप से समवर्ती कोड के लिए ट्रीपैप और ट्रीसेट के समकक्ष हैं।
JDK 6 के लिए कार्यान्वयन आईबीएम में मेज़्ड माइकल द्वारा उच्च प्रदर्शन डायनामिक लॉक-फ्री हैश टेबल्स और सूची-आधारित सेटों पर आधारित है , जो दर्शाता है कि आप तुलनात्मक रूप से तुलना और स्वैप (CAS) संचालन का उपयोग करते हुए स्किप सूचियों पर बहुत से कार्यों को कार्यान्वित कर सकते हैं । ये लॉक-फ़्री हैं, इसलिए synchronized
जब आप इन कक्षाओं का उपयोग करते हैं, तो आपको (अधिकांश कार्यों के लिए) ओवरहेड के बारे में चिंता करने की ज़रूरत नहीं है ।
वर्तमान में जावा में कोई रेड-ब्लैक ट्री आधारित समवर्ती नक्शा / सेट कार्यान्वयन नहीं है। मैंने साहित्य को थोड़ा सा देखा और एक जोड़े को कागजात मिले जो समवर्ती आरबी के पेड़ों को छोड़ें सूचियों से बेहतर प्रदर्शन करते थे, लेकिन इनमें से बहुत सारे परीक्षण ट्रांसेक्शनल मेमोरी के साथ किए गए थे , जो फिलहाल किसी भी प्रमुख आर्किटेक्चर पर हार्डवेयर में समर्थित नहीं है।
मैं मान रहा हूं कि जेडीके के लोग यहां एक स्किप लिस्ट के साथ गए थे क्योंकि कार्यान्वयन अच्छी तरह से जाना जाता था और क्योंकि इसे लॉक-फ्री बनाना सरल और पोर्टेबल था (कैस का उपयोग करके)। अगर किसी को स्पष्ट करने की परवाह है, तो कृपया करें। मैं उत्सुक हूँ।