HashSet ขึ้นอยู่กับ HashMap
ถ้าเราดูที่การดำเนินการทุกอย่างจะถูกจัดการภายใต้HashSet<E>
HashMap<E,Object>
<E>
ถูกใช้เป็นกุญแจของ HashMap
ถูกนำมาใช้เป็นกุญแจสำคัญของ
และเรารู้ว่าHashMap
มันไม่ปลอดภัย นั่นคือเหตุผลที่เรามีConcurrentHashMap
ใน Java
จากนี้ฉันกำลังสับสนว่าทำไมเราไม่ได้มี ConcurrentHashSet ซึ่งควรจะอยู่บนพื้นฐานที่ConcurrentHashMap
?
มีอะไรอีกบ้างที่ฉันขาดหายไป? ฉันต้องการใช้Set
ในสภาพแวดล้อมแบบมัลติเธรด
นอกจากนี้ถ้าผมต้องการที่จะสร้างของตัวเองConcurrentHashSet
ผมจะประสบความสำเร็จได้โดยเพียงแค่การเปลี่ยนHashMap
ไปConcurrentHashMap
และออกจากส่วนที่เหลือเป็นคืออะไร?
ConcurrentSkipListSet
ถูกสร้างขึ้นบนConcurrentSkipListMap
ซึ่งการดำเนินการและConcurrentNavigableMap
ConcurrentMap