Каковы преимущества ConcurrentSkipListMap?

Возможный дубликат:
Когда следует использовать ConcurrentSkipListMap?

Я имею в виду, что если в java-библиотеках есть ConcurrentSkipListMap, иногда это может быть лучше, чем ConcurrentHashMap. Интересно, где ConcurrentSkipListMap действительно хорош?


person user293756    schedule 24.03.2011    source источник
comment
Читая javadoc, становится ясно, что ConcurrentSkipListMap также является NavigableMap. Интересный вопрос заключается в том, как поведение параллелизма или производительность сравниваются с ConcurrentHashMap.   -  person Nr9    schedule 24.03.2011


Ответы (1)


ConcurrentSkipListMap поддерживает SortedMap и NavigableMap. Если вам нужны отсортированные данные, это тот, который нужно использовать (или TreeMap, если вам не нужен параллелизм)

Вы также можете обернуть его с помощью Collections.setFromMap(), чтобы создать параллельный SortedSet.

person Peter Lawrey    schedule 24.03.2011
comment
это и еще одно: ConcurrentSkipListMap создан для более высокой производительности параллелизма, тогда как ConcurrentHashMap ориентирован на производительность больших размеров карты. - person kellogs; 20.09.2011
comment
CSLM обеспечивает более высокий уровень параллелизма, когда у вас в среднем 16 или более ядер, использующих карту. Вы можете настроить CHM для поддержки более высокого параллелизма. ;) - person Peter Lawrey; 20.09.2011