如果使用后就关闭的话,那N多用户不停的连接进来操作,一开一关的不是很浪费资源么?
还是一直打开不关。这样就省了开关的时间。
7 个解决方案
#1
这个问题没有确定答案,根据实际情况而定,所谓耗费资源,其实也没有那么邪乎。
#2
现在的服务数据库连接是一直开着的。但服务器端有时候会发生错误 “要求已打开且可用的连接。连接的当前状态为正在连接”
所以不知道是不是因为 数据库连接一直没关,所有人都使用同一个连接实例来操作数据库 造成这种错误。
#3
还是看代码吧,你这样说我也不明白具体情况,不过首先任何一个用户进来的时候我都会分配一个新的连接给他,一般情况下处理完后就会Close。但是如果这个用户是一个确定的长任务用户,那么当然就会一直分配给他。所有都是看具体情况而定的。
#4
一般是用完后都关闭吧
#5
ADO.net 都是用连接池了,即使你在代码中释放,Connection并没有真的释放,只是释放到连接池。下次同样ConnectionString的连接需要被创建时,先在连接池中找。找到就返回,因此开销并不太大。
#7
结论是,用完就释放。
#1
这个问题没有确定答案,根据实际情况而定,所谓耗费资源,其实也没有那么邪乎。
#2
现在的服务数据库连接是一直开着的。但服务器端有时候会发生错误 “要求已打开且可用的连接。连接的当前状态为正在连接”
所以不知道是不是因为 数据库连接一直没关,所有人都使用同一个连接实例来操作数据库 造成这种错误。
#3
还是看代码吧,你这样说我也不明白具体情况,不过首先任何一个用户进来的时候我都会分配一个新的连接给他,一般情况下处理完后就会Close。但是如果这个用户是一个确定的长任务用户,那么当然就会一直分配给他。所有都是看具体情况而定的。
#4
一般是用完后都关闭吧
#5
ADO.net 都是用连接池了,即使你在代码中释放,Connection并没有真的释放,只是释放到连接池。下次同样ConnectionString的连接需要被创建时,先在连接池中找。找到就返回,因此开销并不太大。
#6
#7
结论是,用完就释放。