【发布时间】:2011-10-04 21:59:38
【问题描述】:
IKVM 是一个了不起的野兽,它可以让我在 .NET 环境中执行 Java jar。也就是说,它是在 .NET 运行时 (CLR) 上编写的 JVM。
是否存在相反的情况?有人在 JVM 上写过 CLR 吗?通过适当的翻译和基类库实现,我们可能会发现 .NET 代码在激进的 JIT 编译器(如 HotSpot)中比在 CLR JIT 中执行得更快。
【问题讨论】:
-
没听说过IKVM,刚查了一下。太好了,谢谢你的问题;-)
-
CLR JIT 几乎没有“未优化”,它利用了 MSIL 但不是 Java 字节码的许多特性。我怀疑,一般来说,会有任何性能优势增益。如果有的话,相反的可能性似乎更大。此外,这篇文章中的语言......最后是高度自以为是和煽动性的。
-
@pst- 你是对的。 CLR JIT 做了很多优化,所以我编辑了这个问题,使其不那么令人兴奋。也就是说,我不知道 CLR JIT 会进行增量优化,例如随着程序的执行,用性能更高的代码替换函数调用或函数体。