HashMap : 비동기로 처리가 되어있어 성능이 다른 Map들에 비해 좋다.
HashTable : JCF가 나오기 전에 만들어진 레거시 클래스로 대부분의 메서드에 동기화가 걸려있다. 그로 인해 단일 스레드 환경에서 성능이 떨어진다.
ConcurrentHashMap : 멀티 스레드 환경에서 동시성을 보장하기 위해 만들어진 클래스
JDK 1.5 버전에서 나왔다.
get에는 동기화 처리가 되어있지 않으며 put에 보면 메서드에 붙어있는 것이 아니라 메서드 내부에 들어있는 것을 알 수 있다.
특정 상황에서만 동기화가 동작하게 함으로써 병목현상을 최소화 처리를 했다.
'프로그래밍언어 > Java' 카테고리의 다른 글
자바(Java) 문자열(String) 대문사, 소문자 변환하기 (0) | 2022.02.09 |
---|---|
자바(Java) 문자열 자르기(split, subString) 사용법 (0) | 2022.02.09 |
자바(Java) Map의 동작원리 (0) | 2021.10.26 |
Java Collection FrameWork(JCF)란? (0) | 2021.10.25 |
자바(Java) 왜 for-each문을 추천할까? (2) | 2021.08.25 |
댓글