如何将旧版本的垃圾收集器添加到更新版本的JRE中

时间:2014-06-09 05:45:44

标签: java garbage-collection version

在最近的一次采访中,我被问到如下问题。

How to add a garbage collector of an older version to a JRE of newer version

无法从互联网上获得正确答案。任何人都可以向我解释这个吗?

提前致谢

2 个答案:

答案 0 :(得分:4)

你不能。垃圾收集器是JVM的一部分,无法移动。如果您有两个源代码,可以考虑尝试修补收集器 - 但这可能是一项非常大的任务,而且我对这个问题的可靠性非常谨慎。结果...... JVM的其他位很可能取决于对可用垃圾收集器的假设。

假设这些是同一个虚拟机的不同版本,我希望垃圾收集器只有在大多数情况下可用的垃圾收集器才能退役,所以我不希望你得到它无论如何都要有显着的好处 - 至少在某些非常的特殊情况之外。

(我很高兴这只是一个面试问题,而不是现实生活中的情况。虽然正如Jigar所说,也许他们实际上并没有想过将一个特定的收藏家添加到没有&#39的虚拟机中。无论如何,这似乎是一个非常奇怪的面试问题。)

答案 1 :(得分:4)

可能是面试官正在寻找你可以通过激活特定垃圾收集器的vm标志,例如jre 7,你仍然可以说-XX:-UseSerialGC使其使用串口gc