-
java8 metaspaceJAVA 2022. 8. 5. 13:27
회의 중, 자바7과8의 힙에 대한 비호환대응 이야기가 나왔는데 사전지식이 하나도 없어서
간단하게 metaspace를 정리.
자바7에서 힙 영역에 존재하고 있던 permanent generation가 사라지고 자바8에서 metaspace가 도입.
metaspace는 클래스의 메타데이터(데이터의 데이터)를 관리하는 영역이다.
metaspace는 힙 영역이 아닌 os에서 관리하는 native memory영역에 위치한다.
클래스 메타데이터는 클래스로더에 의해 native memory영역에 할당된다.
클래스로더가 gc에 의해 회수가 되면, 해당 클래스로더의 희새 할당되었던 metaspace도 삭제가 된다.
metaspace의 사이즈는 -XX:MaxMetaspaceSize 로 지정이 가능하다.
지정값이 없을 시에는 사이즈는 무제한이다.https://software.fujitsu.com/jp/manual/manualfiles/m170006/b1ws1303/01z200/b1303-00-11-01-06.html
'JAVA' 카테고리의 다른 글
JAVAでPYTHONを呼ぶ (0) 2022.08.24 java8 - garbage collection log (0) 2022.06.25 Stream() (0) 2022.01.20 equals hashCode (0) 2022.01.15 @ToString (0) 2022.01.01