Net Framework的构成, 主要包括两个部分:CLR(Common Language Runtime)-公共语言运行时和BCL(Basic Class Library)基础类库,CLR提供服务:包括诸如内存管理,垃圾回收,线程管理等服务;而BCL则提供实现
在C#中创建的对象,数组,列表…等等都不需要考虑资源释放的问题,因为它会被CLR的垃圾回收机制自动回收。比如有个ObjectBase类,创建这个对象然后置空,它会一段时间后被自动回收:
ObjectBase ob = new ObjectBase();
ob = null;
区别
托管代码:运行在CLR下的代码就是托管代码,它是安全的。诸如C#、VB.NET 写的代码都会先编译成MSIL(MS中间代码),并运行在CLR的子集CLI(Common Language Infrastructure)中,最终根据不同的平台使用JIT(just in Time)编译成机器代码。
非托管代码:非托管代码主要包括:Com组件,Win32API,ActionX等,它们直接由操作系统管理,是不安全的。
.net托管代码和非托管代码的区别
最新推荐文章于 2024-03-02 07:32:10 发布
.NET Framework主要由CLR(公共语言运行时)和BCL(基础类库)组成。CLR提供了内存管理、垃圾回收和线程管理等服务,确保托管代码的安全性。BCL则包含各种类,如对象、数组和列表,使得开发者无需手动释放资源。C#等语言编译成MSIL,通过CLI运行,并由JIT编译为机器代码。非托管代码如Com组件和Win32API则不享受这些服务,直接由操作系统管理。
185

被折叠的 条评论
为什么被折叠?



