C# IDisposable接口与using关键字
来源:互联网 发布:建筑信息模型软件培训 编辑:程序博客网 时间:2024/05/16 17:00
一,简介
接口其实就是一种规范,一种标准,实现该接口的类要遵循该标准,所以就具备该接口标准要求的功能或特性。
C#中的IDisposable接口就是一种非常有用且非常常用的接口,该接口要求类实现Dispose()方法,在该方法中释放占用的资源。如果在析构函数中释放资源要等到垃圾回收时,太晚了。
但是手动调用Dispose方法稍微有点麻烦,而且也怕忘了调用,这样资源也得不到及时释放,所以可以使用using关键字,using关键字代码块的末尾会自动调用Dispose方法。
二,示例
class Database:IDisposable { public void visitDatabase() { Console.WriteLine("开始访问数据库"); } public void Dispose() { Console.WriteLine("释放数据库连接资源"); } //主函数,测试入口 static void Main(string[] args) { //手工释放 Database db = new Database(); db.visitDatabase(); db.Dispose(); //using关键字自动释放 using (Database db2 = new Database()) { db2.visitDatabase(); } //using关键字自动释放 Database db3 = null; using (db3 = new Database()) { db3.visitDatabase(); } } }
运行结果:
阅读全文
0 0
- C# IDisposable接口与using关键字
- C# IDisposable 接口
- C#中的IDisposable接口
- C#正确实现IDisposable接口
- C#中IDisposable接口实现
- 关于使用using 要实现IDisposable接口
- IDisposable接口与垃圾回收
- IDisposable 接口
- IDisposable 接口
- IDisposable 接口
- IDisposable接口
- IDisposable 接口
- c# 中使用构构函数与IDisposable接口双重释放资源
- C# IDisposable
- C# IDisposable
- C#中的using关键字
- c# using 关键字小结
- c# using关键字
- 模型的数据库CRUD操作
- 【已解决】Python3安装multiprocessing报错:SyntaxError: Missing parentheses in call to 'print'
- java中对时间处理(三)----取当前时间的向前30天
- centOS6.9 防火墙的关闭以及开启
- tar命令的详细解释
- C# IDisposable接口与using关键字
- touchGFX 初探
- 安卓简单登录与注册
- 全面解析JS中的this机制
- jdbc中想同时使用两个sql查询语句,必须创建两套statement和resultSet
- Ubuntu 10.10安装SSH
- 通信加密的一些理解
- 练习 18:日志:/var/log,rsyslog,logger
- unity & php上传文件