博客
关于我
Net.Framework概述
阅读量:794 次
发布时间:2023-02-14

本文共 723 字,大约阅读时间需要 2 分钟。

Net Framework作为运行在其上的应用程序提供服务的托管执行环境,主要包含CLR(公共语言运行时)和Net Framework类库。CLR是Net Framework的核心,其基础是CTS(通用类型系统)和CLS(公共语言定义)。

CTS是通用类型系统,负责管理程序中所有类型的信息,确保不同语言能够在同一运行时环境中使用相同类型。CLS则是公共语言定义,规定了开发者在编写代码时需要遵循的规则和约束,确保不同语言程序能够相互调用。

CLR是公共语言运行时,它负责管理程序的执行环境,包括类型的加载、垃圾回收、安全性等功能。CLI(公共语言基础架构)是公共语言与运行时的接口定义,负责不同语言与运行时的交互。BCL(基础类库)是一个粒度较小的编程框架,为框架内部提供基础支持,FCL(框架类库)则提供了大粒度的编程框架,适用于不同层面的应用开发。

托管代码运行在CLR中,属于中间语言,依赖CLR提供的服务如垃圾回收、安全监测等。非托管代码则编译为机器码直接运行在硬件上,依赖平台和语言特定环境。托管代码的优势在于跨语言兼容性强,CLR提供的服务丰富;非托管代码依赖于具体平台和语言,实现复杂度更高。

Net Framework中的许多资源如StreamWriter、Timer、数据库连接等,通常为非托管代码提供服务。在运行未签名程序时,需要在项目属性中修改“允许不安全代码块”属性。

垃圾回收机制(GC)负责释放内存资源,但并非实时性执行,可能导致系统瓶颈或不稳定性。GC.Collect方法可以强制进行垃圾回收,但它不能释放非托管资源。

元数据是一种二进制数据,用于存储程序集、类型和属性的信息,帮助开发者更好地理解和管理代码结构。

转载地址:http://bbcfk.baihongyu.com/

你可能感兴趣的文章
mysql面试题:创建索引时会不会锁表?
查看>>
mysql面试题:高度为3的B+树可以存放多少数据?
查看>>
mysql颠覆实战笔记(八)--mysql的自定义异常处理怎么破
查看>>
mysql驱动、durid、mybatis之间的关系
查看>>
mysql驱动支持中文_mysql 驱动包-Go语言中文社区
查看>>
MySQL高可用切换_(5.9)mysql高可用系列——正常主从切换测试
查看>>
MySQL高可用解决方案详解
查看>>
MYSQL高可用集群MHA架构
查看>>
MySQL高级-MySQL并发参数调整
查看>>
MySQL高级-MySQL应用优化
查看>>
MySQL高级-MySQL查询缓存优化
查看>>
MySQL高级-MySQL锁
查看>>
MySQL高级-SQL优化
查看>>
MySQL高级-SQL优化步骤
查看>>
MySQL高级-内存管理及优化
查看>>
MySQL高级-存储过程和函数
查看>>
MySQL高级-索引的使用及优化
查看>>
MySQL高级-视图
查看>>
MySQL高级-触发器
查看>>
Mysql高级——锁
查看>>