什么是托管代码?
托管代码是运行在公共语言运行库上的(CLR)一个中间代码,起到编译的源代码的作用;
源代码运行时分为两个阶段:一是编译源代码为托管代码,二 托管代码编译为平台专用语言。
托管代码运行在CLR上边,这个运行库会给代码的编译提供各类服务,它会加载和验证程序集 以确保代码的编译正确。
什么是非托管代码?
简单来说非托管代码是机械代码,依赖于平台和编译出它的那台机器。不能享受运行库的各种服务。
区别:
1、托管代码是一种中间语言,运行在CLR上;
非托管代码被编译为机器码,运行在机器上。
2、托管代码独立于平台和语言,能更好的实现不同语言平台之间的兼容;
非托管代码依赖于平台和语言。
3、托管代码可享受CLR提供的服务(如安全检测、垃圾回收等),不需要自己完成这些操作;
非托管代码需要自己带一些服务(如安全检测、垃圾回收等)。