是什么原因导致 JRE 6 JVM 代码缓存泄漏?
2022-09-03 02:59:33
自从切换到 JRE 6 以来,我的服务器的代码缓存使用量(非堆)一直在无限期地增长。我的应用程序在运行时创建了很多类,但这些类在GC过程中成功卸载。我可以看到这些类在gc日志中被卸载,并且permGen的使用率保持不变。我特别确保在我的代码中,一旦我完成了这些类,它们就是孤立的,因此它们正确地从permGen中收集垃圾。
然而,代码缓存不断增长。我只是在切换到JRE 6后才意识到代码缓存。所以我想我的问题是:
- GC 是否包含代码缓存?
- 具体而言,可能导致代码缓存内存泄漏的原因。
- JDK 6 在这方面是否存在错误?