Google의 메소드를 사용하여 클래스 로더 누수를 해결하는 방법을 볼 수 있지만 클래스 로더 누출은 무엇인지 설명되어 있지 않습니다.클래스 로더 누출이란 무엇입니까?
내가 부하 객체 Person person = new Person()
을로드하면 Person 클래스는 클래스 loader.Person 클래스 객체에 의해로드됩니다. 영구적 인 상태에서도 메타 공간에 머무를 것입니다 (java 8 이전에는 영구적으로 유지됩니다). Person 객체 (Person 클래스가 아닙니다. 객체)는 응용 프로그램에서 사용되지 않습니다. 메모리 누수로 간주됩니까?
내 게시물의 시나리오가 클래스 로더 유출 사례가 아님을 의미합니까? –
아니요, 클래스 로더 유출이 아닙니다. –
당신이 '이 종류의 가장 일반적인 시나리오는 컨테이너에서 웹 응용 프로그램을 다시로드하는 중입니다.'라고 생각합니다. 다시 시작한 후에도 다시로드하고 다시 시작한다는 것은 동일한 의미입니까?) 웹 서버의 바람둥이, 때로는 웹 서버가 미리로드 된 클래스 로더를 해제 할 수 없습니다. 그렇지? 또한 당신은'다중 클래스 로더를 생성하고 있습니다. '라는 뜻은 무엇입니까? 나는 클래스 로더를 명시 적으로 생성하는 개발자를 보지 못했습니다 (항상 jvm 또는 웹 서버에 의해 수행됩니다). 그래서 실질적으로 클래스 로더 누수가 가능할 때. 여기서 더 자세히 설명해 주시겠습니까? –