Runtime.getRuntime().addShutdownHook()

Posted 一首简单的歌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Runtime.getRuntime().addShutdownHook()相关的知识,希望对你有一定的参考价值。

示例如下:

package shutdownHookDemo;

public class Demo {

    public static void main(String[] args) {
        System.out.println("hello world");
        Runtime.getRuntime().addShutdownHook(new Thread(){
            @Override
            public void run() {
                System.out.println("程序退出了");
            }
        });
    }
}

打印结果如下:

hello world
程序退出了
addShutdownHook API的作用:
  • JDK中的注释:Registers a new virtual-machine shutdown hook。 注册一个虚拟机关闭的钩子,即虚拟机关闭时(main方法执行完毕)会调用传入的新线程的run方法。
  • 实际应用中,当我们的程序正常或者异常退出时,如果我们要做一些收尾工作,比如关闭某些资源、记录某些日志,都可以写在addShutdownHook中。


以上是关于Runtime.getRuntime().addShutdownHook()的主要内容,如果未能解决你的问题,请参考以下文章

Runtime.getRuntime().addShutdownHook()

Android Runtime.getRuntime().exec

为啥 Runtime.getRuntime().exec(startupOracle);没有完全执行命令

在循环中运行“Runtime.getRuntime()。exec()”

如何与 Runtime.getRuntime().exec(command) 程序进行交互?

Runtime.getRuntime.exec()执行java进程失败