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

 

首先说说.Net Framework的构成主要包括两个部分:CLR(Common Language Runtime)-公共语言运行时和BCL(Basic Class Library)基础类库,CLR提供服务:包括诸如内存管理,垃圾回收,线程管理等服务;而BCL则提供实现

托管代码:运行在CLR下的代码就是托管代码,它是安全的。诸如C#VB.NET 写的代码都会先编译成MSILMS中间代码),并运行在CLR的子集CLI(Common Language Infrastructure)中,最终根据不同的平台使用JITjust in Time)编译成机器代码。

非托管代码:非托管代码主要包括:Com组件,Win32APIActionX等,它们直接由操作系统管理,是不安全的。

原文地址:https://www.cnblogs.com/xiongwei/p/14980998.html