•
ConcurrentHashMap은 동시성 친화적이며 최신 기술을 반영한 HashMap 버전이다.
•
ConcurrentHashMap은 내부 자료구조의 특정 부분만 잠궈 동시 추가, 갱신 작업을 허용한다. 다만 표준 HashMap은 비동기로 동작한다.
1. 리듀스와 검색
•
ConcurrentHashMap은 스트림에서 봤던 것과 비슷한 종류의 세 가지 새로운 연산을 지원한다.
◦
forEach: 각 (키, 값) 쌍에 주어진 연산을 수행
◦
reduce: 모든 (키, 값) 쌍을 제공된 리듀스 함수를 이용해 결과로 합침
◦
search: 널이 아닌 값을 반환할 때까지 각 (키, 값) 쌍에 함수를 적용
2. 계수
•
ConcurrentHashMap은 맵의 매핑 개수를 int로 반환하는 mappingCount 메서드를 제공한다.
•
이는 size 메서드 대신 사용되는데, 이를 이용하면 매핑의 개수가 int의 범위를 넘어서는 이후의 상황에 대처할 수 있기 때문이다.