有一个控制台Java应用程序应该可以运行,直到通过Ctrl + C或关闭控制台窗口将其停止为止。在退出前如何编程该应用程序以执行清理代码?

最佳答案

您可以使用Shutdown Hook

基本上,您需要创建一个将执行关闭操作的线程,然后创建add it as a shutdown hook。例如:

class ShutdownHook extends Thread
{
    public void run()
    {
        // perform shutdown actions
    }
}

// Then, somewhere in your code

Runtime.getRuntime().addShutdownHook(new ShutdownHook())

10-06 09:55