摘要: 在.NET框架包含一个托管堆,所有的.NET语言在分配引用类型对象都要使用它,像值类型这样的轻量级别对象始终分配在栈中,但是所有的类实例和数组都被生成在一个内存池中,这个内存池就是托管堆垃圾收集器的托管的基本算法很简单:1、将所有的托管内存标记为垃圾2、寻找正在使用的内存快,并将他们标记为有效3、释放所有没有被使用的内存块4、整理堆以减少碎片看上去很简单,但是垃圾回收器实际采用的步骤和堆管理系统的其他部分并非微不足道,其中常常涉及为提高性能而作的优化设计。举例来说,垃圾收集遍历整个内存池具有很高的开销。然而,研究表明大部分在托管堆上分配的对象只有很短的生存期,因此堆被分成三个段,称作gener 阅读全文
posted @ 2011-12-07 09:22 指尖流淌 阅读(8425) 评论(1) 推荐(3) 编辑
点击右上角即可分享
微信分享提示