Item81 – wait와 notify보다는 동시성 유틸리티를 애용하라.

ConcurrentMap으로 구현한 동시성 정규화 맵

public static String intern(String s) {
    String result = map.get(s);
    if (result == null) {
        result = map.putIfAbsent(s, s);
        if (result == null)
            result = s;
    }
    return result;
}


출처 : EFFECTIVE JAVA 3/E 조슈아 블로크 지음