싱글 톤이 클래스의 정적 메서드 또는 정적 참조 (다른 방법이 있습니까?)로 구현되었다고 가정하면 싱글 톤 클래스를로드 한 클래스 로더를 언로드하여 해당 싱글 톤을 가비지 수집 할 수 있습니다. 다른 클래스 로더에있는 클래스의 참조 (예 : 일반적인 문제는 ThreadLocal 인스턴스가 참조에 매달려있는 경우)
저는 GAE를 사용하지 않았지만 내 생각에 이것이 무슨 일이 일어나고 있는지, 클래스 로더가 언로드되고 있는지입니다. GAE는 이것이 싱글 톤이라는 것을 모릅니다. 단순히 클래스 로더에 대한 참조를 해제합니다. 컨테이너에있는 응용 프로그램의 경우 응용 프로그램을 메모리에 유지하는 유일한 참조 일 수 있습니다 (운이 좋다면 이상적입니다). 이것이 도달 할 수 없게되면, 전체 앱은 도달 할 수 없게되고 가비지 컬렉터에 의해 수집됩니다. 물론 실행중인 모든 스레드는 app 인스턴스에 대한 참조를 가질 수 있으므로 간섭을 일으킬 수 있습니다. 그러나 컨테이너가 응용 프로그램 스레드를 제어 할 수 있다고 가정하고 응용 프로그램을 실행하는 요청 (예 : 스레드)이 없을 때만 클래스 로더를 해제합니다. 암호.
링크가 모호하다. –