|
1
19
C的垃圾收集是非确定性的,但语言确实为资源处理提供了一个确定性结构,如下所示:
这将创建一个
|
|
|
2
2
因为C是一种垃圾收集语言,垃圾收集不是确定性的。事实上,您的sqlconnection 是 处理。你不能选择什么时候。 SQL连接是一个有限的资源,您很容易创建足够的连接来耗尽它们。改为这样写:
但在这种情况下,你可能会逃脱,因为
因此,这意味着如果您从一个封闭的连接开始,数据适配器应该为您处理它。我更担心的是,您将SQL命令作为普通字符串传入。查询中必须不时有用户参数,这意味着您要将这些数据直接连接到命令字符串中。 不要那样做!! 而是使用sqlcommand的paramters集合。 |
|
|
3
1
它将是,在垃圾收集完成之后。同样,打开一个文件流进行写入而不关闭它。即使代码超出范围,它也可能被“锁定”。 |
|
|
4
1
我认为这与sqlconnection池有关。您可以做的是,我们经常在工作中将整个调用包装在一个using语句中,该语句使它调用dispose()方法,从而关闭连接并释放对象。 然后你可以这样做:
|
|
|
5
1
我同意这里所有的答案,加上一个连接可能比一个方法更广泛的范围。当您需要在不同的地方使用现有的连接时,场景会发生一些变化。一定要打电话
|