ConcurrentHashMap은 왜 HashMap보다 안전한가?멀티스레드 환경에서 HashMap은 동기화 처리가 되어 있지 않아 동시에 여러 스레드가 put 또는 resize 작업을 수행할 경우 무한 루프, 데이터 손실, 구조 붕괴와 같은 문제가 발생할 수 있다. 예시로 리사이징 도중 다른 스레드가 버킷에 접근하면서 해시 충돌로 인한 순환 참조가 생길 수 있다.반면 ConcurrentHashMap은 다음과 같은 구조적 개선을 통해 동기화 문제를 해결하고 있다.Java 7까지는 Segment(세그먼트)라는 구조를 사용하여 맵을 여러 구역으로 나눈 후 Segment 단위로 락을 걸어 동시성 확보Java 8부터는 Segment를 제거하고 배열의 각 Bucket(버킷)에 대해 CAS(Compare-And-Sw..