如何退出Java运行时并保存当前进度?

时间:2019-01-10 18:28:59

标签: java runtime

我正在寻找一种在退出Java运行时之前保存进度的方法。目前,我的脚本正在做一些分析,然后将其写入XLSX文档中。有没有一种方法可以在控制台中写入“退出”或类似内容,之后我的脚本将继续写入XLSX?这是通过创建线程来实现的吗?我目前没有任何东西,因此它可以运行。

2 个答案:

答案 0 :(得分:3)

您需要添加一个关闭挂钩,该挂钩是一个线程,它将在每次运行时以退出代码0退出时触发。如果程序失败或断电,则必须提防使用另一个退出代码退出,因为这将导致数据丢失。

Runtime.getRuntime().addShutdownHook(new Thread(() -> { //write to .xlsx }));

答案 1 :(得分:-1)

只需阅读标准输入(控制台),然后执行类似if(command.equals(“ exit”)MyMainClass.exit()的操作,并创建相应的方法来保存数据,然后调用System.exit