1.Net Framework 是为其运行的应用程序提供各种服务的托管执行环境。主要包括CLR(公共语言运行时)和Net Framework类库。
2.CLR是Net Framework的核心。
3.CLR的核心是CTS和CLS。
4.CTS是通用类型系统
CLS是公共语言定义
CLR是公共语言运行时
5.CLI是公共语言基础架构
6.BCL基础类库,一个公共编程框架,粒度相对较小,为所有框架提供基础支持。
FCL框架类库,提供了大粒度编程框架,它主要是提供针对于不同层面的编程框架。
7.托管代码在公共语言运行库(CLR)中运行
非托管代码是运行在公共语言运行库环境(CLR)的外部
区别:1.托管代码是一种中间语言,运行在CLR上。
非托管代码被编译为机器码,运行在机器上。
2.托管代码独立于平台和语言,能更好的实现不同语言平台之间的兼容;
非托管代码依赖于平台和语言。
3.托管代码可享受CLR提供的服务(如安全监测,垃圾回收等),不需要自己完成这些操作;
非托管代码需要自己提供安全监测,垃圾回收等操作。
4..Net有很多非托管的资源,比如StreamWriter,Timer,数据库连接。
8.运行unsaft,需要设置:
单击“配置属性”文件夹。
单击“生成”属性页。
修改“允许不安全代码块”属性
9.垃圾回收GC
GC如其名,就是垃圾收集,这里的垃圾仅指内存而已。
GC并不能释放所有的资源,他不能自动释放非托管资源。
GC并不是实时性的,会造成系统的瓶颈或不稳定性
GC.Collect()方法 作用:强制进行垃圾回收。
10.理解元数据:是一种二进制数据。
元数据存储一下信息:
程序集的说明
类型的说明
属性