SQL Server中的连接泄漏问题

Geo*_*ge2 2 .net c# sql-server ado.net sql-server-2008

我使用的是SQL Server 2008 Enterprise + C#+ ADO.Net + .Net 3.5.我在ADO.Net客户端使用连接池(ADO.Net的默认行为).我正在使用sp_who2或sys.dm_exec_connections查找活动连接数(如果我找到有效连接数的方法错误,请告诉我).

如果每次创建并打开一个新的ADO.Net连接对象后,我将使用匹配的close语句在使用连接对象后关闭ADO.Net连接对象实例(执行存储过程),我想知道在这种情况下,从我的ADO.Net客户端应用程序关闭所有连接后,活动连接数应始终为0,如果显示活动连接数> 0,它应该是非常奇怪的?

乔治,提前谢谢

egl*_*ius 6

关闭将释放连接以用于连接池.这并不意味着物理连接已关闭.

还要确保.close在finally中,因此它在常规流和异常发生时执行.