我用Java反射在這樣的代碼:java.lang.OutOfMemoryError:PermGen的空間:Java反射
Method method = LogFactory.class.getDeclaredMethod("getContextClassLoader");
method.setAccessible(true);
ClassLoader classLoader = (ClassLoader)method.invoke(null);
LogFactory.release(classLoader);
我用jprofiler
可以看到這樣sun.reflect.GeneratedMethodAccessor11
這些類每增加了許多類電話
sun.reflect.BootstrapConstructorAccessorImpl
sun.reflect.NativeConstructorAccessorImpl
sun.reflect.DelegatingConstructorAccessorImpl
sun.reflect.DelegatingClassLoader
我想這就是爲什麼PermGen空間增加了,如何清理這些類?
爲什麼不創造更多的燙髮空間? – StarPinkER 2013-04-21 10:41:31
也許我應該做更多的測試,我使用eclipse調試代碼和jprofiler附加它。 – Fatkun 2013-04-21 10:45:11
@JermaineXu默認的perm空間是128MB,但它在一個月後達到了 – Fatkun 2013-04-21 10:48:14