IT/Programming
<Effective Java> RULE 70 스레드 안전성에 대해 문서로 남겨라
병렬적으로 사용해도 안전한 클래스가 되려면, 어떤 수준의 스레드 안전성을 제공하는 클래스인지 문서에 명확히 남겨야 한다. 변경 불가능 : 이 클래스로 만든 객체들은 상수다. 따라서 외부적인 동기화 메커니즘 없이도 병렬적으로 이용 가능하다. · String, Long, BigInteger,.. 무조건적 스레드 안전성 : 이 클래스의 객체들은 변경이 가능하지만 적절한 내부 동기화 메커니즘을 갖추고 있어서 외부적으로 동기화 메커니즘을 적용하지 않아도 병렬적으로 사용할 수 있다. · Random, ConcurrentHashMap.. 조건부 스레드 안전성 : 무조건적 스레드 안전성과 거의 같은 수준이나 몇몇 스레드는 외부적 동기화가 없이는 병렬적으로 사용할 수 없다. 아래와 같은 객체 반복자는 외부적 동기화 없이..
2023. 4. 26. 13:19