<分区>
Possible Duplicate:
Close and Dispose - which to call?
我的数据层中的许多函数不受 try-catch
或 using
子句的保护。
我的 GUI 层有 try-catch
子句。这够了吗?
如果引发异常,我是否可以依赖 dbConnection
和其他被处置和关闭的对象? GUI 层将处理异常。
<分区>
Possible Duplicate:
Close and Dispose - which to call?
我的数据层中的许多函数不受 try-catch
或 using
子句的保护。
我的 GUI 层有 try-catch
子句。这够了吗?
如果引发异常,我是否可以依赖 dbConnection
和其他被处置和关闭的对象? GUI 层将处理异常。
最佳答案
Will this be enough?
没有。除非通过 using
,否则不会自动处理任何内容。超出范围的对象不会被收集 - 垃圾收集稍后发生,间歇性且不确定。
如果您正在创建连接,请使用 using
除非那是不可能的(例如异步回调)。否则,您很容易就会留下大量打开的连接对象,使服务器饱和。
关于c# - DbConnection 超出范围时是否关闭并处置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12033872/