Java Runtime.addShutdownHook()方法
2016-09-12 00:00
274 查看
摘要: 钩子
java.lang.Runtime.addShutdownHook(Thread hook) 方法注册一个新的虚拟机关闭挂钩。 Java虚拟机的关机响应于两种类型的事件:
通常情况下,程序退出时的最后一个非守护线程退出时或退出(等价地,System.exit)方法被调用,或
虚拟机终止在响应于一个用户中断,如打字^ C,或一个全系统的事件,如用户注销或系统关闭.
关闭钩子是一个简单的初始化但尚未启动的线程。当虚拟机开始关机顺序,将一些未指定的顺序启动所有已注册的关闭钩子,让它们同时运行。当所有的钩子已经完成,它会然后运行所有uninvoked的终结,如果最终确定的出口已启用。最后,虚拟机将暂停。需要注意的是守护线程将继续运行在关机过程中,作为非守护线程,如果关机是通过调用exit方法.
IllegalStateException -- 如果虚拟机已经是在关闭的过程中
SecurityException -- 如果存在安全管理器并且它拒绝的RuntimePermission(“shutdownHooks”)
java.lang.Runtime.addShutdownHook(Thread hook) 方法注册一个新的虚拟机关闭挂钩。 Java虚拟机的关机响应于两种类型的事件:
通常情况下,程序退出时的最后一个非守护线程退出时或退出(等价地,System.exit)方法被调用,或
虚拟机终止在响应于一个用户中断,如打字^ C,或一个全系统的事件,如用户注销或系统关闭.
关闭钩子是一个简单的初始化但尚未启动的线程。当虚拟机开始关机顺序,将一些未指定的顺序启动所有已注册的关闭钩子,让它们同时运行。当所有的钩子已经完成,它会然后运行所有uninvoked的终结,如果最终确定的出口已启用。最后,虚拟机将暂停。需要注意的是守护线程将继续运行在关机过程中,作为非守护线程,如果关机是通过调用exit方法.
声明
以下是声明java.lang.Runtime.addShutdownHook()方法public void addShutdownHook(Thread hook)
参数
hook -- 一个初始化但尚未启动的线程对象返回值
此方法不返回一个值。异常
IllegalArgumentException -- 如果指定的钩已被注册,或如果它可以判定钩已经运行或已被运行IllegalStateException -- 如果虚拟机已经是在关闭的过程中
SecurityException -- 如果存在安全管理器并且它拒绝的RuntimePermission(“shutdownHooks”)
相关文章推荐
- JAVA Runtime.addShutdownHook()方法
- JAVA Runtime.addShutdownHook()方法
- JAVA Runtime.addShutdownHook()方法{拿到线程句柄,在程序关闭之前调用释放资源}
- Java中Runtime.getRuntime().addShutdownHook()方法
- 利用 java.lang.Runtime.addShutdownHook() 钩子程序,保证java程序安全退出
- java(JVM)结束时释放JNI资源(Runtime.addShutdownHook)
- 利用 java.lang.Runtime.addShutdownHook() 钩子程序,保证java程序安全退出
- Runtime.getRuntime().addShutdownHook()方法的用法
- Runtime.addShutdownHook()使用
- Runtime.getRuntime().addShutdownHook
- Runtime.getRuntime().addShutdownHook(shutdownHook);
- 如何使用Runtime.addShutdownHook(Thread)
- 如何使用Runtime.addShutdownHook
- Runtime.addShutdownHook()用法
- java.util.Runtime类中的addShutdownHook()方法
- addShutdownHook()方法简单介绍
- addShutdownHook()方法要点
- Runtime.getRuntime().addShutdownHook()的使用
- Runtime.getRuntime().addShutdownHook(shutdownHook);
- 如何使用Runtime.addShutdownHook