[Java] Atomic Variables

java.util.concurrent.atomic 패키지에 atomic한 연산을 지원하는 변수들이 정의되어 있다. 모든 클래스는 set, get 메소드를 가지고 있고 volatile 변수처럼 작동한다.

즉, 락을 걸지않고 thread-safe한 프로그래밍을 할 수 있게 지원한다.

밑은 패키지 안에있는 클래스들..

package

아이폰은 클래스 이름만 봐서는 atomic 한지 알 수 없어서 나중에 알게되곤 했는데,

Mutable 하지않은 변수들 NSArray , NSDictionary 들이 atomic 하다고 알고 있음
(https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Multithreading/ThreadSafetySummary/ThreadSafetySummary.html)

자바는 클래스명에서 대놓고 atomic하다고 말하고 있어 좋다 ㅎㅎ

기껏 atomic한 변수에 volatile 붙이고 그런 실수는 안할듯..

튜토리얼 : http://docs.oracle.com/javase/tutorial/essential/concurrency/atomicvars.html

도큐먼트 : http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/package-summary.html