摘要: 序言: 每一个Java程序都可以为JVM增加一个关闭钩子。JVM将在关闭之前执行关闭钩子中的指令。 问题: 一个程序可能需要在退出前执行一些指令。程序可能由于下列原因而退出: 所有的线程已经执行完毕 调用System.exit() 用户输入Ctrl+C 系统级关闭或用户注销 所有的线程已经执行完毕 阅读全文
posted @ 2019-11-12 14:35 大数据从业者FelixZh 阅读(672) 评论(0) 推荐(0) 编辑
摘要: 有时候我们用到的程序不一定总是在JVM里面驻守,可能调用完就不用了,释放资源. RunTime.getRunTime().addShutdownHook的作用就是在JVM销毁前执行的一个线程.当然这个线程依然要自己写. 利用这个性质,如果我们之前定义了一系列的线程池供程序本身使用,那么就可以在这个最 阅读全文
posted @ 2019-11-12 14:24 大数据从业者FelixZh 阅读(776) 评论(0) 推荐(0) 编辑
摘要: isShutDown当调用shutdown()或shutdownNow()方法后返回为true。 isTerminated当调用shutdown()方法后,并且所有提交的任务完成后返回为true;isTerminated当调用shutdownNow()方法后,成功停止后返回为true;如果线程池任务 阅读全文
posted @ 2019-11-12 11:33 大数据从业者FelixZh 阅读(3889) 评论(0) 推荐(0) 编辑