CLR加载程序集&创建内部数据结构表示类型和JIT执行的顺序

大家好,读了CLR 4.0 有个疑问没得到解决,请指教.

  • 在 1.4章中:
    图片说明

  • 在 3.8中:
    图片说明

请问引用程序集和创建结构是在JIT编译方法前还是后,
另外JIT是进入Main后 一行行编译,还是在Main外完成了对方法的编译操作?

没有C币...

c#

1个回答

当然是先加载引用(依赖关系)再编译,而且方法是编译的最小单位,而不是行。实际上也没有“行”,C#、VB写的代码有所谓代码行,但是被编译为IL后,是一种类似汇编的指令序列,根本没有行了。

Docker_
Docker_ 回复贵阳老马马善福专业维修游泳池堵漏防水工程: 谢谢,受教了!
4 个月之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 .net内置的函数,事先就便衣好了,放在gac里
4 个月之前 回复
Docker_
Docker_ 哇,大佬.再请教个问题:IL类似指令序列,那指令按顺序执行时,例如第一次执行到: call void [mscorlib]System.Console::WriteLine(string),那WriteLine的IL是在此时被JIT编译成本机代码 然后执行的吗?
4 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问