关于.NET FrameWork 中的垃圾回收机制

GC是垃圾收集器(Garbage Collection)。程序员不用担心内存管理,因为垃圾收集器会自动进行管理。GC只能处理托管内存资源的释放,对于非托管资源则不能使用GC进行回收,必须由程序员手工回收,一个例子就是FileStream或者SqlConnection需要程序员调用Dispose进行资源的回收。

1 //基础知识:当没有任何变量指向一个对象的时候对象就可以被回收掉了,但不一定会立即被回收。
2 object obj = new object();//只有new才会有新对象
3 Console.WriteLine(obj);
6 object obj2 = obj;
7 obj = null;
8 obj2 = null;
9 Console.WriteLine();

上例中,当obj、obj2赋值为null,就表示他所指向的对象失去了引用,就等待垃圾回收了!

具体的垃圾回收原理图如下:

posted @ 2012-04-03 09:29  秋恨雪  阅读(582)  评论(0编辑  收藏  举报