Any*_*are 7 c# asp.net performance informix database-connection
以下两种方法中哪一项具有更好的性能?
using( var DB_Connection_s = new DBConnection() )
{
//todo: interact with database connection
}
Run Code Online (Sandbox Code Playgroud)
要不就 :
DB_Connection_s.Close();
Run Code Online (Sandbox Code Playgroud)
在末尾.
第一种方法是否使汇集概念变得无用?因为如果我在每次使用时都处理连接,那么每次都必须打开一个新连接(并且池中没有任何连接).
该using模式是更好,因为处置呼叫反正关闭连接,但作为奖金,即使使用内部出了差错连接被关闭.例如,异常或只是强制程序执行退出使用范围的返回.使用using时,您不需要显式关闭连接,这使代码更具可读性.作为另一种模式,必须尽快关闭连接.关闭/打开连接过于频繁没有性能缺陷,因为连接池将优化连接重用.
当您在Connection上调用Close或Dispose时,连接将被释放回池中...
source = SQL Server连接池(ADO.NET)
因此,不要担心错过池连接导致的性能损失.
从代码的角度来看,差异应该是如此之小,以至于using应始终使用该语句