摘要:
垃圾回收器(Garbage Collector)是CLR 里的一个功能,所以它只能处理CLR所管辖范围内的代码内存(即托管内存) 垃圾回收期会检查托管堆中是否有应用程序不再使用的任何对象。如果有,他们的内存就可以回收。 原理: JIT编译器生成本地代码时,还会创建一个内部使用的表。从逻辑上来讲,该表中的每个记录项都代表在方法的本地CPU指令中的一个字节偏移范围,针对每个范围,这个记录项都记录了包含着根的一组内存地址和CPU寄存器。(这个记录项的每个内存地址和CPU寄存器即是根,根只是抽象的说法) 一、 垃圾回收器开始执行时,它假设堆中的所有对象都是垃圾。垃圾回收器沿着线程栈上行以检查所有根.. 阅读全文