JIT是否创建包含本机代码的输出?

时间:2018-01-02 02:26:10

标签: clr .net-assembly jit

在作用于Assembly的JIT编译器的上下文中(包含元数据和中间语言):

通过特定的语言编译在磁盘上生成程序集,以便CLR进行自己的独立编译,将MSIL转换为本机代码。编译后是否在磁盘上创建了可见输出?包含二进制代码或类似文件的文件?

1 个答案:

答案 0 :(得分:0)

Here是一篇非常明确的文章,我找到了答案。基本上,没有输出文件,并且本机代码在运行时期间动态存储在内存中。

  

当托管代码调用特定方法时,编译函数会唤醒,查找中间代码(处理器无关的对象代码,类似于机器代码),然后将中间代码编译为可用的指令处理器。然后,托管代码将这些指令保存在内存中动态分配的位置。编译功能指回原始方法,以便两者相连:当程序集中的方法执行时,它执行存储在内存中的处理器指令。