码迷,mamicode.com
首页 > 数据库 > 详细

数据库conn.Close()与conn.dispose(方法的区别

时间:2015-02-27 14:49:47      阅读:341      评论:0      收藏:0      [点我收藏+]

标签:

Close()是关闭链接,Dispose()是释放对象(垃圾回收器回收)
比如Conn对象,Close过后,Conn这个对象本身还存在内存中,还在连接池中,需要在使用的时候,可以直接用。
而调用Dispose()后,释放conn对象所占用的资源,释放后这个对象就不可用了,处于等待垃圾回收器回收状态;
Conn对象被回收,不会再放入连接池,Conn对象已经不存在了,下次再需要使用的时候,需要重新创建(New)

如果所有的连接都被Dispose的话,每次使用数据库都必须重新创建连接,这样很耗费资源。因此不要用Dispose。
.NET会维护连接池,连接Open的时候从连接池中取出一个没有使用的连接,用完以后Close()的时候再放回连接池,实际上没有创建新的连接,从而提高了性能。
因此为了性能,为了使用连接池,不可以dispose,但必须close() 。

数据库conn.Close()与conn.dispose(方法的区别

标签:

原文地址:http://www.cnblogs.com/haust/p/4303152.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!