쓰레드 썸네일형 리스트형 Java 멀티쓰레드 동기화 - (1) Volatile Java에는 멀티쓰레드 환경에서 동기화를 하기 위한 3가지 방법이 있다. 그중 Volatile 키워드에 대해서 설명하겠습니다. 1. volatile 키워드 JAVA에서 volatile 키워드는 변수를 read 하고 write 할때 CPU cache가 아닌 메인 메모리에다가 한다고 명시적으로 선언하는 것이다. 보통의 메모리 구조는 아래와 같이 생겼다. CPU 내에는 성능 향상을 위해서 L1 cache가 내장 되어있습니다. 쓰레드에서 같은 변수를 참조하려고 해도 쓰레드마다 다른 캐시를 참조하기 떄문에 불일치 문제가 생깁니다. 이해하기 쉽게 한쪽 쓰레드에서는 flag 를 검사하는 쓰레드(쓰레드 1), 한쪽 쓰레드에서는 flag의 값을 바꾸는 (쓰레드2) 2개의 쓰레드를 만들었습니다. public class T.. 더보기 이전 1 다음