【发布时间】:2010-01-19 15:39:40
【问题描述】:
我们知道,对于任何其他对象,GC 都会处理释放问题。但是驻留在字符串池中的字符串对象会发生什么。谁将决定解除分配,谁实际执行?因为我们知道即使在取消引用之后仍然存在 String 字面量。
【问题讨论】:
我们知道,对于任何其他对象,GC 都会处理释放问题。但是驻留在字符串池中的字符串对象会发生什么。谁将决定解除分配,谁实际执行?因为我们知道即使在取消引用之后仍然存在 String 字面量。
【问题讨论】:
字符串池位于 perm 空间中。它将是garbage collected like every other generation。
如果您运行code like in this example,它将在垃圾回收开始之前填满永久空间。只要internalized strings 可以被垃圾回收,您就不会看到OutOfMemoryErrors。
【讨论】: