利用Runtime.getRuntime().addShutdownHook添加钩子程序,做好程序退出前的打扫工作

Runtime.getRuntime().addShutdownHook钩子程序的作用是什么?
一般程序自然关闭时可能需要做一些打扫的工作,比如资源的释放啊、告诉外部系统程序要关闭了啊等等一系
列的操作,这时候只要通过Runtime.getRuntime().addShutdownHook,就可以简单的添加一个钩子,然后实现
这些功能;

简单的例子:

public class TestHook {

    public static class sendMessageToClient implements Runnable{

        public void run() {
            try {
                Thread.currentThread().sleep(30000);
                System.out.println("我是一个钩子线程,等我执行完系统才关闭啊");
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

    public static void addSendMessageHook(){
        Runtime.getRuntime().addShutdownHook(new Thread(new sendMessageToClient()));
    }

    public static void main(String[] args) {
        TestHook testHook = new TestHook();
        addSendMessageHook();
    }
}
 

添加一个钩子程序就是这么简单!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值