在虚拟机被关闭前想做一些收尾工作,可以使用
Runtime.getRuntime().addShutdownHook(new Thread(){ @Override public void run() { log.error("begin to shutdown...."); try { sleep(1*1000*60); } catch (InterruptedException e) { e.printStackTrace(); } log.error("shutdown completely..."); } });
Java 虚拟机会为了响应以下两类事件而关闭:
exit
System.exit