c언어에서 volatile 키워드는 단순히 volatile 이 붙은 변수의 컴파일러 최적화를 금지하라.


이런 의미를 가지잖아?


그럼 java에서는 volatile이 어떤 효과를 가짐?



한국 블로그 글들보면 대부분이, 메인 메모리에 직접 값을 읽고 써서 뭐 캐시 동기화 문제를 상쇄시킨다라고 적혀있는데


공식문서보면 그런 말이 전혀 없더라고


stackoverflow에서는 jvm 구현체에 따라 다르다. 라는 말이 간간히 적혀있던데