Java 메모리 관리: Young, Old, Permanent 세대 이해
Java의 메모리 관리 용어에서 힙은 세 가지 기본 세대로 나뉩니다. : 젊고, 늙고, 영구적입니다. 각 세대는 특정 목적을 수행하며 다른 세대와 동적으로 상호 작용합니다.
젊은 세대
젊은 세대는 새로운 객체가 처음 할당되는 힙 영역입니다. 또한 Eden과 Survivor라는 두 개의 하위 공간으로 나뉩니다. 대부분의 할당은 Eden 공간에서 발생합니다. Eden 공간의 객체가 하나 이상의 가비지 수집 주기에서 살아남으면 Survivor 공간으로 승격됩니다.
Old Generation
Old Generation이 주요 저장 영역입니다. 수명이 긴 개체의 경우. 생존자 공간의 여러 가비지 수집에서 살아남은 개체는 이전 세대로 승격됩니다. Old Generation은 Young Generation에 맞지 않는 큰 객체를 저장하는 역할도 담당합니다.
Permanent Generation(Non-Heap)
이름과 달리 Permanent 생성은 Oracle JVM의 힙의 일부가 아닙니다. 이는 주로 클래스 정의, 메타데이터 및 공유 상수 데이터를 위해 예약된 별도의 전용 공간입니다. Java 6 이하에서는 인턴된 문자열도 영구 세대에 저장되었으나 Java 7에서는 이것이 변경되었습니다.
상호작용과 관계
3세대는 다음과 같이 상호작용합니다. :
위 내용은 Java 메모리 관리에서 젊은 세대, 노년층, 영구 세대가 어떻게 함께 작업합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!