일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- mysql
- 이스티오
- 보조스트림
- jvm
- SpringBoot
- thread
- MSA
- 백준
- K8s
- Collection
- list
- 쿠버네티스
- 토비의 스프링
- OS
- Stack
- Kotlin
- GC
- 자바
- JPA
- 자바 ORM 표준 JPA 프로그래밍
- redis
- Stream
- Real MySQL
- gradle
- IntellJ
- 스트림
- spring
- Java
- 토비의 스프링 정리
- 스프링
Archives
- Today
- Total
목록volatitle (1)
인생을 코딩하다.

volatile volatile란? volatile 키워드는 java 변수를 Main Memory에 저장하겠다 라는 것을 명시한다. 매번 변수의 값을 읽을 때마다 CPU cache에 저장된 값이 아닌 Main Memory에서 읽는 것이다. 또한 변수의 값을 쓸 때마다 Main Memory까지 작성한다. volatile를 쓰지 않았을 때, non-volatile일때의 문제점 멀티쓰레드 어플리케이션에서의 non-volatile 변수에 대한 작업은 성능상의 이유로 CPU 캐시를 이용한다. 둘 이상의 CPU가 탑제된 컴퓨터에서 어플리케이션을 실행한다면, 각 쓰레드는 변수를 각 CPU의 캐시로 복사하여 읽어들인다. non-volatile 변수에 대한 작업은 JVM 이 메인 메모리로부터 CPU 캐시로 변수를 읽어들..
Java
2021. 1. 24. 04:55