java - Java 应用程序终止时是否释放了所使用的资源?

标签 java memory-management connection

Java 应用程序可能会使用 IO 流、套接字或数据库连接,当不再需要它们时应将其关闭。

但是,应用程序可能会被终止(例如通过终止进程)。在这种情况下会释放所有使用的资源吗?谁将释放它们:OS 还是 JRE?

最佳答案

JVM 将在终止时释放所有 Activity 资源;但是,这并不能确保另一端也会释放资源,因此明确关闭资源符合每个程序员的最大利益。

Java 7 中存在一种显式关闭流的替代方法,称为 try-resource“语句”,它相当于在 try block 之后的 finally block 中关闭资源。可以找到更多信息 here .

关于java - Java 应用程序终止时是否释放了所使用的资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10906226/

相关文章:

c# - 如何限制 .Net Web 应用程序的 ODBC 连接数?

java - 使用 POST 发送 JSON 对象时的 HTTP 415

java - 使用 Java if 和 else if 语句时的字符通配符

java - Backendless CodeRunner 未向无后端服务器注册

iOS 需要帮助克服内存问题

java - HttpURLConnection:是否需要调用connect()?

java - com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException : Unknown column 'email' in 'where clause'

R:了解 object.size() 如何与内存使用相关

iphone - 释放变量时出现段错误(EXC_BAD_ACCESS)

java - postgres 上的错误转换连接