CLR的核心功能

它是让.Net程序执行所需要外部服务的集合

1-在程序的第一步编译时,将程序通过编译器编译为IL,并生成元数据,将IL与元数据打包,加入PE和CLR文件头使之成为托管模块,将各个模块打包为程序集

2-类型检查器负责保证类型安全(代码验证),即时编译器负责将IL转换为机器码

3-类型加载器负责通过清单和元数据探测类型的位置,并加载所需要的类型,生成类型对象,包括方法表等。

4-方法调用

5-自动内存管理和垃圾回收(COM用引用计数,CLR使用标记清除=基于代的垃圾回收器

引用类型的变量=根

1-暂停进程中的所有线程

2-GC标记阶段

遍历堆中的所有对象,将同步块索引字段中的一位设为0,表示所有的对象都应该删除→CLR检查所有活动根,查看它们引用了哪些对象

3-GC压缩阶段)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值