黑马程序员技术交流社区

标题: 关于数据库连接using的使用 [打印本页]

作者: 刘逍遥    时间: 2012-6-23 09:50
标题: 关于数据库连接using的使用
如题,求教高手解释下,这个和IDisposable接口有什么关系

作者: 鲍云龙    时间: 2012-6-23 10:14
当控制从using块通过成功运行到结束或者抛出异常退出时,IDispose.Dispose()将会被执行。记住你例示的对象必须实现System.IDisposable接口。using语句定义了哪个对象将被清除的一个范围
作者: 王志波    时间: 2012-6-23 10:37
因为connection、command都实现了IDisposable接口,用using方便管理,出了using范围的就会执行IDispose.Dispose()。
作者: 朱永恒    时间: 2012-6-23 12:19
只要实现IDisposable接口的类,可以用using,出using范围后销毁对象。
作者: 黑马-杨鹏立    时间: 2012-6-23 13:53
实现这个接口的,使用了using是对资源的释放。。。
如果不对资源释放,不断的调用会导致服务器承受的压力过大。。。最后导致服务器瘫痪。。。。
作者: 黑马杨凯    时间: 2012-6-23 21:23
using(对象的声名或者实例化)
{
  //程序体
}
超出了范围就会自动调用引用对象的Dispose()方法来释放资源。

    要求对象对应的类要支持IDisposable接口,就是在内部实现了IDisposable接口的Dispose()方法。因为using语句最终生成的就是一个try, finally代码块,在finally代码块里调用对象的Dispose()方法释放资源。
作者: 王志波    时间: 2012-7-1 00:45
using()
{

}
出了方括号就会自动执行dispose释放资源,算是一种用法简单的用法吧,至于原理ls已经说得很清楚了。




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