托管代码与非托管代码的区别
2015-01-17 13:07
197 查看
托管代码(Managed Code)就是中间语言(IL)代码,在公共语言运行库(CLR)中运行。编译器把代码编译成中间语言,当方法被调用时,CLR把具体的方法编译成适合本地计算机运行的机器码,并且将编译好的机器码缓存起来,以备下次调用使用。随着程序集的运行,CLR提供各种服务:内存管理,安全管理,线程管理,垃圾回收,类型检查等等。
非托管代码,直接编译成目标计算机码,由操作系统直接执行,代码必须自己提供垃圾回收,类型检查,安全支持等服务。如需要内存管理等服务,必须显示调用操作系统的接口,通常调用Windows SDK所提供的API来实现内存管理。
当项目选择名字以MFC,ATL,Win32开头的项目类型,那么这个项目所产生的就是非托管程序。
非托管代码,直接编译成目标计算机码,由操作系统直接执行,代码必须自己提供垃圾回收,类型检查,安全支持等服务。如需要内存管理等服务,必须显示调用操作系统的接口,通常调用Windows SDK所提供的API来实现内存管理。
当项目选择名字以MFC,ATL,Win32开头的项目类型,那么这个项目所产生的就是非托管程序。
相关文章推荐
- 托管代码与非托管代码的区别
- 托管代码与非托管代码的区别
- 托管、非托管、本地:这些代码有什么区别?
- 托管与非托管代码的区别
- 托管代码与非托管代码的区别
- .NET 托管、非托管、本地:这些代码有什么区别?
- 托管代码和非托管代码的介绍,以及在这区别下的混合调试方法
- 托管代码与非托管代码的区别
- 托管与非托管代码的区别
- Net Framework 中托管代码与非托管代码的区别
- 托管代码和非托管代码
- 托管代码和非托管代码
- 托管和非托管的区别
- 托管代码和非托管代码的区别
- 托管代码与非托管代码的性能比较
- 托管代码 和非托管代码
- 代码托管与非托管
- 托管代码和非托管代码
- c和c#托管与非托管代码中变量对应
- C# CLRInsideOut 托管代码与非托管代码互操作,产生相关调用代码的好工具 C++ 头文件转C# 的好工具