黑马程序员技术交流社区

标题: 垃圾回收机制是怎么一回事?为什么c#垃圾回收是自动的? [打印本页]

作者: 袁晓俊    时间: 2014-4-23 09:31
标题: 垃圾回收机制是怎么一回事?为什么c#垃圾回收是自动的?
本帖最后由 袁晓俊 于 2014-4-23 13:14 编辑

垃圾回收机制是怎么一回事?为什么c#垃圾回收是自动的?
作者: czwanglei    时间: 2014-4-23 10:00
不要问为什么C#内存回收是自动。因为微软已经帮你写好了,所以是自动的。在对象来说。那个析构函数就是内存回收的范例,但析构函数微软自动帮你写了。。
作者: 袁晓俊    时间: 2014-4-23 10:02
哦,是这样,,感谢你的帮助,希望以后有更多的交流,我qq:1181567882,微信:1181567882
作者: 嘴角上揚ぃ读不    时间: 2014-4-23 11:29
C#里面的GC(垃圾回收)不是以这个变量的使用时间来回收内存的。而且GC回收的都是可托管代码。  一般你定义一个引用变量,它肯定会在堆上面占用一块空间,栈上有个地址指向这个存储位置,只用当GC发现堆上这个资源(数据)在栈上没有地址指向它的时候才把这块内存回收。 非托管资源GC是不会自动回收的,类如数据库连接,文件等。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2