[英]Are resources used by a Java application freed when it terminates?
Java应用程序可能使用IO流,套接字或数据库连接,这些不再需要时应关闭它们。
但是,应用程序可能会终止(例如,通过终止进程)。 在这种情况下,将释放所有使用的资源吗? 谁将释放它们:OS或JRE?
JVM将在终止时释放所有活动资源。 但是,这不能确保另一端也可以释放资源,因此明确关闭资源符合每个程序员的最大利益。
Java 7中存在一种显式关闭流的替代方法,称为try-resource“ statement”,它等效于在try块之后在finally
块中关闭资源。 有关更多信息,请参见此处 。
如果您的软件无法适当地进行资源管理,则会发生以下情况:
正如瓦肯(Vulcan)所提到的那样,显然,这一切都不能确保妥善处理它们。
请注意,第三个要点是相当普通的事情:大多数操作系统都会处理这一点,并且与Java平台的内部结构无关。 这是关于操作系统自行管理其流程和资源的信息。
也可以看看:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.