Java volatile이란?
·
프로그래밍/Java
자바 volatile 키워드에 대해 알아보기 전에 앞서, 관련된 내용인 컴퓨터 구조와 관련된 내용에 대해 간단하게 설명하려 합니다. Memory-wall Problem Memory-wall 문제는 컴퓨터 구조에서 CPU(프로세서)의 속도가 메모리 시스템과 데이터를 주고받는 속도를 능가할 때 발생하는 현상을 말합니다. 그로인해 프로세서는 빠른 연산 처리속도를 가짐에도 불구하고 메모리에서 CPU로 데이터를 가져올 때까지 기다려야 하므로 성능이 느려지고 속도도 제한되게 됩니다. 따라서 위 그림과 같이 CPU(그림에서의 Core 영역)는 CPU cache를 둠으로써, CPU와 메모리 사이의 데이터 전송 속도 문제를 해결했습니다. 하지만 이로 인해, CPU cache의 데이터와 RAM사이의 데이터가 일치하지 않는..