1. Обзор
Карты
, естественно, являются одним из самых распространенных стилей коллекции Java.
И, что важно, HashMap
не является потокобезопасной реализацией, в то время как Hashtable
обеспечивает потокобезопасность за счет синхронизации операций.
Несмотря на то, что Hashtable
является потокобезопасным, он не очень эффективен. Другая полностью синхронизированная карта,
Collections.synchronizedMap,
также не демонстрирует высокой эффективности. Если мы хотим потокобезопасности с высокой пропускной способностью при высоком уровне параллелизма, эти реализации не подходят.
Чтобы решить эту проблему, Java Collections Framework
представила ConcurrentMap
в Java 1.5
.
Следующие обсуждения основаны на Java 1.8
.