加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

处理异常的Java程序退出

发布时间:2020-12-15 04:50:37 所属栏目:Java 来源:网络整理
导读:假设我有一个打开数据库连接的 Java应用程序.通常我会在finally块中添加一个connection.close(),但是在kill操作或任何其他异常终止的情况下不会执行此块,是吗?作为程序员,我是否有任何其他预防措施可以在应用程序退出之前正确关闭连接? 解决方法 您应该查
假设我有一个打开数据库连接的 Java应用程序.通常我会在finally块中添加一个connection.close(),但是在kill操作或任何其他异常终止的情况下不会执行此块,是吗?作为程序员,我是否有任何其他预防措施可以在应用程序退出之前正确关闭连接?

解决方法

您应该查看Java的Runtime.addShutdownHook()方法( http://java.sun.com/javase/6/docs/api/java/lang/Runtime.html#addShutdownHook(java.lang.Thread)).它允许您添加将在虚拟机终止时调用的挂钩.您可以使用它来调用清理例程.

那将是一个TERM信号. KILL信号将终止进程并且不允许它进行任何清理(因为接收进程无法捕获或忽略KILL信号).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读