关闭连接后将连接引用设置为null

3

在关闭连接后,将连接引用设置为null是否是必需的/良好的实践?

我在finally块中关闭连接。

conn.close();
conn = null;

在性能测试期间,我遇到了连接等待超时异常,因为最大连接数已经超过了限制。


3
这是一个局部变量吗?还是一个字段?你希望在这里实现什么目标? - Jon Skeet
1
也许这可以帮助你识别如果我将一个对象设置为null会发生什么:链接 - MrT
@Jon,我正在尝试查找代码中是否存在连接泄漏问题。虽然所有连接都已关闭,但在某个时候应用程序会耗尽连接。我正在使用IBM Was 7。 - androidDev
2
垃圾回收器将会移除它,关闭后不需要放置null引用。 - Murat Karagöz
如果我将conn设置为null,它会关闭它持有的连接还是保持打开状态?根据我的理解,应该会被关闭。 - androidDev
1个回答

0

当人们想要明确丢弃引用并从而帮助垃圾收集和触发终结器时,你会在使用此模式。这几乎总是多余的。

如果将conn变量用于指示需要新连接(例如通过将其设置为字段并在稍后引用之前将其重置为null),则这是另一种模式,但与即时资源管理无关。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接