摘要: 便于对文章的开展,需要先明确两个概念。第一个就是很多人用.Net写程序,会谈到托管这个概念。那么.Net所指的资源托管到底是什么意思,是相对于所有资源,还是只限于某一方面资源?很多人对此不是很了解,其实.Net所指的托管只是针对内存这一个方面,并不是对于所有的资源;因此对于Stream,数据库的连接,GDI+的相关对象,还有Com对象等等,这些资源并不是受到.Net管理而统称为非托管资源。而对于内... 阅读全文
posted @ 2008-06-18 13:24 toddzhuang 阅读(699) 评论(0) 推荐(0) 编辑
摘要: 我们先来谈谈析构函数。 析构函数是不可继承的。因此,除了自已所声明的析构函数外,一个类不具有其他析构函数。 由于析构函数要求不能带有参数,因此它不能被重载,所以一个类至多只能有一个析构函数。 析构函数是自动调用的,它不能被显式调用。当任何代码都不再可能使用一个实例时,该实例就符合被销毁的条件。此后,它所对应的实例析构函数随时均可能被调用。销毁一个实例时,按照从派生程度最大到派生程度最小的顺序,调用... 阅读全文
posted @ 2008-06-18 13:13 toddzhuang 阅读(2218) 评论(0) 推荐(0) 编辑
摘要: .Net中的内存回收机制 垃圾回收器是用来管理应用程序的内存分配和释放的。在垃圾回收器出现以前,程序员在使用内存时需要向系统申请内存空间。有些语言,例如Visual Basic,可以自动完成向系统申请内存空间的工作。但是在诸如Visual C++的语言中要求程序员在程序代码中申请内存空间。如果程序员在使用了内存之后忘了释放内存,则会引起内存泄漏。但是有了垃圾回收器,程序员就不必关心内存中对象... 阅读全文
posted @ 2008-06-18 11:40 toddzhuang 阅读(608) 评论(2) 推荐(0) 编辑