내가 String
개체 많이 intern()
를 생성하는 프로그램을 작성한다고 가정 그들 :임의의 수의 String 객체를 만들면 JVM의 PermGen 공간이 부족합니까?
String someString = param1 + param2;
someString.intern();
이 작은 문자열의 집합하지만 내가 억 String
의를 만들려고하면 괜찮지? (또는 그 문제에 대한 억 * 억?) 는 지금까지 내가 알고있는 JVM이 GC -ed하지 않습니다 String
들과 PermGen의 PermGen 지역의 정수 풀을 유지합니다. 내가 루프에서 String
객체의 과도한 수를 만들 수 있지만 내가 그들에 대한 참조를 삭제하는 경우
그래서 그들은 (나는 PermGen 공간 부족하게됩니다) GC이 -ed받을 수 있습니까? String
은 중복되지 않고 모두 고유합니다.
Java 7에 저장되는 위치는 어디입니까? – Marcelo
젠장, 자바의 최신 버전에 대한 자세한 내용은 너무 복잡합니다. – Kayaman
내 질문을 편집했습니다. 좋은 지적. –