连接池我有下面的代码,如果最后用conn==null,我还用连接池吗?我知道关闭连接是一个好习惯,但是如何处理整个连接对象呢?publicvoidExecuteNonQuery(SqlCommandCmd){//==========Connection==========//SqlConnectionConn=newSqlConnection(strConStr);try{//==========打开连接==========//Conn.Open();//==========执行命令==========//Cmd.Connection=Conn;Cmd.CommandTimeout=180;Cmd.ExecuteNonQuery();}catch(ExceptionExc){抛出Exc;}finally{//========关闭连接========//if(Conn.State==ConnectionState.Open){Conn.Close();}//========处理对象========//Conn=null;一是考虑using,二是让框架来处理。托管服务提供商将根据连接字符串进行池化。publicvoidExecuteNonQuery(SqlCommandCmd){//==========Connection==========//using(SqlConnectionConn=newSqlConnection(strConStr)){//===========打开连接==========//Conn.Open();//==========执行命令==========//Cmd.Connection=Conn;Cmd.CommandTimeout=180;Cmd.ExecuteNonQuery();您可以使用以下代码来执行相同的操作。结果是一样的。不管有什么错误,康恩都会得到照顾。任何错误都会像以前一样渗透。publicvoidExecuteNonQuery(SqlCommandCmd){使用(SqlConnectionConn=newSqlConnection(strConStr));{//==========打开连接==========//Conn.Open();//==========执行命令==========//Cmd.Connection=Conn;Cmd.CommandTimeout=180;Cmd.ExecuteNonQuery();如您所见,当您想要/需要的唯一错误处理是确保您的连接对象被正确处理时,使用语法可以使事情变得整洁。将它设置为null是多余的,因为它将在函数结束时超出范围。是的,如果您这样做,您仍在使用连接池。您可以处置对象并仍然使用池。此外,它是一个托管应用程序,是一个网络应用程序,流量很大,然后处理对象对你有好处,因为垃圾收集器通常无法跟上足够的速度来节省你的性能。以上就是C#学习教程:连接池分享的全部内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
