조슈아 블로크 님의 "Effective Java" 책을 정리한 포스팅 입니다. 1. wait와 notify보다는 동시성 유틸리티를 애용하라사용하기기 아주 까다로움으로 고수준 동시성 유틸리티를 사용하자 실행자 프레임워크스레드 풀 관리와 작업 실행을 위한 구현 제공스레드 생성과 관리를 추상화하여 직접 스레드 작업을 제어하지 않아도 됨 동시성 컬렉션동시 접근을 처리하기 위해 내부적으로 락 매커니즘을 활용여러 메서드를 원자적으로 묶어 호출하는 일 불가 ConcurrentHashMapBlockingQueue생산자-소비자 패턴에 적합큐가 비어 있을 떄 소비가자 대기하거나, 큐가 꽉 찼을 떄 생산자가 대기하는 방식으로 동작 동기화 장치멀티스레드 작업에서 스레드 간 협력을 지원하기 위한 유틸리티 CountDownLa..