java volatile keyword


Main Memory에 저장하겠다라는 것을 명시
매번 변수의 값을 Read할 때마다 CPU cache에 저장된 값이 아닌 Main Memory에서 읽는 것
또한 변수의 값을 Write할 때마다 Main Memory에 까지 작성하는 것

하나의 Thread가 write하고 나머지 Thread가 읽는 상황인 경우
변수의 값이 최신의 값으로 읽어와야 하는 경우.


### Thread1에서 쓰고, Thread2에서 읽는 경우만 동시성을 보장


> [Java volatile이란?](https://nesoy.github.io/articles/2018-06/Java-volatile)





