托管代码和非托管代码

Posted 寻寻渐进。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了托管代码和非托管代码相关的知识,希望对你有一定的参考价值。

什么是托管代码?

托管代码是运行在公共语言运行库上的(CLR)一个中间代码,起到编译的源代码的作用;

源代码运行时分为两个阶段:一是编译源代码为托管代码,二 托管代码编译为平台专用语言。

托管代码运行在CLR上边,这个运行库会给代码的编译提供各类服务,它会加载和验证程序集 以确保代码的编译正确。

什么是非托管代码?

简单来说非托管代码是机械代码,依赖于平台和编译出它的那台机器。不能享受运行库的各种服务。

区别:

     1、托管代码是一种中间语言,运行在CLR上;

          非托管代码被编译为机器码,运行在机器上。

     2、托管代码独立于平台和语言,能更好的实现不同语言平台之间的兼容;

          非托管代码依赖于平台和语言。

     3、托管代码可享受CLR提供的服务(如安全检测、垃圾回收等),不需要自己完成这些操作;

          非托管代码需要自己带一些服务(如安全检测、垃圾回收等)。

以上是关于托管代码和非托管代码的主要内容,如果未能解决你的问题,请参考以下文章

托管代码和非托管代码的区别

托管代码和非托管代码的区别

托管和非托管代码是啥意思? [复制]

托管代码和非托管代码

托管库和非托管库之间有啥区别?

托管和非托管代码错误 C3699