ATOMIC 변수

풀그림 2008. 5. 15. 15:54

원자성(atomicity)이란 어떤 작업이 한번에 이루어져야 한다는 것. 자바에서는 32비트 변수를 읽고 쓰는 작업은 모두 원자성 작업이다.

원자성 작업도 synchronized키워드를 쓰라고 effective java에서는 나와있지만,

 

Java 1.5 이후에서는 atomic 변수를 사용하면 synchronized키워드 없이 사용이 가능하다.

따라서 lock도 없고 thread에서 안전하게 된다.

(A small toolkit of classes that support lock-free thread-safe programming on single variables.)

64비트용 long에 대한 atomicLong도 있음


예)

사용자 삽입 이미지

 

이미지 출처 : http://blog.naver.com/oyukihana?Redirect=Log&logNo=60014237492

Java Doc : http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/atomic/package-summary.html

 

Posted by 파이팅야
,