c# – MSIL是否与.NET中的托管代码相同?
发布时间:2020-12-15 03:52:59 所属栏目:百科 来源:网络整理
导读:我与MSIL和管理代码混淆是相同还是不同? 我的意思是说,当我们构建C#代码时会发生什么? 哪一个是对的 C# Code → C# compiler → Managed Code → MSIL 要么 C# Code → C# compiler → MSIL 请提供正确的参考或链接,以支持您的答案. 解决方法 你混淆不同的
我与MSIL和管理代码混淆是相同还是不同?
我的意思是说,当我们构建C#代码时会发生什么? 哪一个是对的
要么
请提供正确的参考或链接,以支持您的答案. 解决方法
你混淆不同的东西
Managed code是用CIL(通用中间语言,以前称为Microsoft中间语言或MSIL)编译并以CLR的受管环境运行的托管语言(C#,VB.NET,F#和许多其他语言)编写的代码.
另一方面,非托管代码直接编译成本机代码(也称为汇编),它不会在CLR上运行. 当你建立你的C#代码,它被编译成CIL.这就是为什么可以使用像ildasm或Reflector这样的工具检查编译的代码.当您执行CIL代码时,会发生什么情况取决于具体情况.它可能是 >使用JIT编译器(最常见的选项)编译成本地代码“及时”.>使用预编译的本地代码执行(您可以使用NGEN来获取??).>直接解释;我认为Windows的某些版本的.Net或类似的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |