Rocho.J

人脑是不可靠的, 随时记录感悟并且经常重复!

 

2012年7月31日

实现IDispose接口

摘要:开始想用单体, 后来发现单体还不能满足需求, 就改成个四不像了... 目的就是, 使用Logger时, 显示用TraceLogger.OpenLogger()方法, 使静态成员获取文本路径, 用完后使用Logger.Close()方法销毁这个对象; 也就是在程序执行过程中, 某任务会执行多次, 每... 阅读全文

posted @ 2012-07-31 16:04 RJ 阅读 (784) 评论 (0) 编辑

[转] C#中标准Dispose模式的实现 --- 转自 http://guojun2sq.blog.163.com/blog/static/6433086120113982749792/

摘要:需要明确一下C#程序(或者说.NET)中的资源。简单的说来,C#中的每一个类型都代表一种资源,而资源又分为两类:托管资源:由CLR管理分配和释放的资源,即由CLR里new出来的对象;非托管资源:不受CLR管理的对象,windows内核对象,如文件、数据库连接、套接字、COM对象等;毫无例外地,如果我们的类型使用到了非托管资源,或者需要显式释放的托管资源,那么,就需要让类型继承接口IDisposable。这相当于是告诉调用者,该类型是需要显式释放资源的,你需要调用我的Dispose方法。不过,这一切并不这么简单,一个标准的继承了IDisposable接口的类型应该像下面这样去实现。这种实现我们称 阅读全文

posted @ 2012-07-31 14:01 RJ 阅读 (79) 评论 (0) 编辑

导航

统计