
Java Memory Model(JMM)과 동시성 규칙
·
Java
Java Memory ModelJava Memory Model(JMM)은 JVM 내에서 메모리에 데이터를 읽고(read) 쓸 때(write)의 규칙을 말한다.JMM는 메모리를 두 가지의 공간 개념으로 다룬다.하나는 스레드 간 공유되는 메모리로,다른 하나는 스레드 내에서만 사용되는 메모리로 다룬다.JVM에서 스레드 간 공유되는 영역은 Heap(Method Area도 포함)이다.스레드 내에서만 사용되는 영역은 JVM Stack이다. (JVM Stack 내의 Stack Frame들을 아우르는 스택 영역이라 생각하자.) 메모리 모델의 이해를 위해 쉬운 예시를 들어보자 가정Heap에는 `Object 1` 객체와 `Object 2` 객체가 들어있다.메서드 내용은 primitive 타입인 int 변수를 생성하고, `..