Thread-Safe 를 위한 Keywords
1. volatile
- 해당 공유되는 변수를 스레드별로 캐시하여 사용하지 말라는 뜻
- 64 bit 연산도 32 bit 연산을 두 번에 나눠 하지 않고 단일 연산으로 처리
- 해당 변수에대해 (read-연산-write) 를 묶어 thread-safe 하게 처리하는 것은 아님
2. final
- 읽기 전용 변수
- 유지보수/가독성에도 도움
3. java.util.concurrent.atomic
- volatile 특성 + lock free thread-safe
- lock를 사용하지 않고 CAS (Compare And Set/Swap)기법 사용하여 thread-safe 실현
- thread-safe 메소드 제공
increametAndGet, addAndGet, ..
'아는 만큼 보인다 > Concurrency' 카테고리의 다른 글
Thread pool 에서 결과(Future) 받기 (0) | 2014.11.19 |
---|---|
Thread 상태 (0) | 2014.11.19 |
Executors 팩토리 클래스 (0) | 2014.11.18 |
wait 메소드 사용시 지켜야 하는 것들 (0) | 2014.11.03 |
Synchronizers (동기화 클래스들) (0) | 2014.08.22 |