这似乎是一个简单的问题,但我想知道不调用“close()”函数的缺点。
问问题
2322 次
6 回答
10
迟早,您会遇到“已达到最大连接限制”错误。我认为这是一个主要缺点。
于 2010-01-26T12:58:35.347 回答
7
除了耗尽连接池(到目前为止大多数答案都是如此)之外,您还有锁定数据的危险。
如果您正在读取或写入表,某些锁定语义会导致某些行被锁定到其他连接。如果您在连接上有任何打开的事务,则尤其如此。
然后读取和写入可能会失败,并且应用程序将到处抛出异常。
简而言之,始终关闭连接。
于 2010-01-26T13:02:09.917 回答
1
连接池将填满,任何新连接都将超时,等待池中的新连接。
于 2010-01-26T12:58:54.793 回答
1
每个到 SQL Server 的连接都需要分配内存。
因此,您打开的连接越多,正在使用和持有的内存就越多,这可能会被更好地利用。
如果您想知道 SQL Server 中的连接使用了多少内存,请查看以下参考。
于 2010-01-26T13:48:51.283 回答
0
与数据库服务器的连接已打开。假设您有 100 多个程序访问同一台服务器...
你也应该处理它
于 2010-01-26T12:59:42.973 回答
0
快速简单的答案是,您越早关闭,连接池就可以越早重新使用连接。
于 2010-01-26T12:59:56.153 回答