C# 与 JAVA - 解释 Java 字节码与 JITing 有什么好处?

C# vs. JAVA - What benefit is there to interpreting Java bytecode vs JITing?

我在 JAVA 和 C# 之间阅读这个 comparison 并且想知道这个声明:

NOTE: While the Java platform supports interpretation of byte code or byte code being JITed then run natively, the .NET platform only supports native execution of C# code because the IL code is always natively compiled before running.

这是否纯粹是 Microsoft 的营销手段,很难将 C# 部署到 Windows 或 以外的 OS 是否它提供了一些好处,例如性能或安全性?

使用及时方法,字节代码在第一次执行时被翻译成本地代码。在执行之前编译需要更多时间,所以第一次执行方法比第二次慢。 .Net 只编译整个程序一次。所以在第一次执行阶段被缩短,因为没有编译延迟。 不同之处仅在于第一次执行代码,因此代码执行的次数越来越多,两种方法在速度方面变得相似。