所以说,连接池也有利有弊,不当情况下开启了连接池是一种浪费的行为,也就是说,你客户端不断地缓存连接,服务器端因为链接资源不足,又不断地去断开客户端端缓存的连接,还不如使用完连接之后,直接老老实实物理断开,交还给数据库服务器 另外说明一下,客户端开启了连接池之后,使用完连接之后你依然要close, 开启连接池的情况下,close的本质是将连接放回连接池, 当下一次再次使用连接的时候,也就是新建一个连接的时候, 比如ado.net的 SqlConnection conn= new SqlConnection ("******") 会去连接池找,如果找到了可用连接(缓存在客户端的,并且没有被服务器踢出的),就直接使用,当然这都是 new SqlConnection ("******")的时候自动完成的 没有开启连接池的情况下,是将连接物理关闭,链接资源交换数据库服务器。
楼上举得这个例子很好,但是“因为他不会永远拉下去”这句话是有问题?你的意思是持续的意思。但是可能会周期拉下去,1分钟拉一次,数据库一般判断连接失效的时间很长(废连接),就会判断一直在使用,根本不会把连接断开让给其他人占用。
110,535
社区成员
642,575
社区内容
加载中
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧