gpt4 book ai didi

java - "Unloading class"消息的含义

转载 作者:IT老高 更新时间:2023-10-28 20:35:26 32 4
gpt4 key购买 nike

任何人都可以解释为什么下面的行会在运行时出现在输出控制台中?

(一个可能的答案是完全 permGen,但这可以排除,因为该程序仅使用 PermGen 中可用的 max100MB 中的 24MB)

[卸载类 sun.reflect.GeneratedSerializationConstructorAccessor28]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor14]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor4]
[卸载类sun.reflect.GeneratedMethodAccessor5]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor38]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor36]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor22]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor8]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor39]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor16]
[卸载类sun.reflect.GeneratedSerializationConstructorAccessor2]
[卸载类 sun.reflect.GeneratedConstructorAccessor1]

程序使用以下参数运行:

-Xmx160M
-XX:MaxPermSize=96M
-XX:PermSize=96M
-XX:+UseConcMarkSweepGC
-XX:+UseParNewGC
-XX:+PrintGCTaskTimeStamps
-XX:+PrintHeapAtGC
-XX:+PrintTenuringDistribution
-XX:+PrintGC详细信息
-XX:+PrintGCDateStamps
-XX:+PrintGCTimeStamps
-详细:gc
-Xloggc:/logs/gc.log

堆和 permGen 中有足够的空间。

最佳答案

这些类(class)保留为 softreferences始终有资格获得 GC。 GC 本身并非在达到最大内存时运行,如果您理解我的意思,它也会在有空间时运行。

这些类在序列化 API 的“底层”使用,它使用反射来访问字段和调用方法。


更新:关于将类卸载记录到标准输出而不是 -Xloggc 中指定的路径,有一个错误报告正是针对这个问题:Bug ID 6637203 .这是 4 个月前修复的。将您的 JVM 升级到最新版本。

关于java - "Unloading class"消息的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2833983/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com