HashSet은 HashMap을 기반으로합니다.
HashSet<E>
구현 을 살펴보면 모든 것이에서 관리됩니다 HashMap<E,Object>
.
<E>
의 키로 사용됩니다 HashMap
.
그리고 우리 HashMap
는 그것이 스레드 안전하지 않다는 것을 알고 있습니다. 그래서 우리는 ConcurrentHashMap
Java를 사용합니다.
이것을 바탕으로, 왜 우리가 ?를 기반으로 해야하는 ConcurrentHashSet이 없는지 혼란 스럽 습니다 ConcurrentHashMap
.
내가 놓친 다른 것이 있습니까? Set
다중 스레드 환경에서 사용해야 합니다.
또한, 내가 만들려면 내 자신의 ConcurrentHashSet
난 그냥 대체하여 그것을 달성 할 수 HashMap
에 ConcurrentHashMap
와 같이 나머지를 떠나?
ConcurrentSkipListSet
에 내장되어 ConcurrentSkipListMap
있는 구현, ConcurrentNavigableMap
및 ConcurrentMap
.