영권's

ConcurrentHashMap 본문

자바/JAVA

ConcurrentHashMap

ykkkk 2023. 6. 19. 21:22

ConcurrentHashMap

ConcurrentHashMap 클래스는 동시성 친화적이며, 내부 자료구조의 특정 부분만 잠궈 동시에 추가, 갱신 작업을 허용한다. (내부적으로 synchronized 키워드를 블록 단위로 사용하여 메서드의 전체가 아닌 일부만 락을 걸어 동시성 문제를 해결하였다.

  • 참고로 ConcurrentHashMap 이전에 멀티스레드에서 안전하게 만들어진 클래스는 HashTable이다.
    • 하지만, HashTable은 주요 메서드 전체를 synchronized 로 감싸서 락을 걸기 때문에 성능상 ConcurrentHashMap 이 더 좋을 수 밖에 없다.

Comments