개별 메서드가 안전해도 두 호출 사이 업무 원자성은 보장되지 않는다.
두 스레드가 같은 키가 없음을 각각 확인한다.
각자 외부 로더나 값 생성을 실행한다.
한 계산 결과가 맵에 저장된다.
다른 결과가 들어와 중복 비용과 순서 의존을 만든다.
핵심: putIfAbsent나 compute처럼 복합 의미를 제공하는 한 연산을 사용한다.