在开发框架过程中,在结束流的时候需要对当前所有流进行关闭。为了以防忘记关流,可以在初始化操作时,添加钩子,钩子会在jvm中增加一个关闭的钩子,当jvm关闭的时候,会执行系统中已经设置的所有通过方法addShutdownHook添加的钩子,当系统执行完这些钩子后,jvm才会关闭。所以这些钩子可以在jvm关闭的时候进行内存清理、对象销毁等操作。

Runtime.getRuntime().addShutdownHook(Thread x);

操作钩子的时候会对钩子按照添加的顺序,逐一进行操作,可将对流的关闭操作写入其中。

转载于:https://www.cnblogs.com/Junpb/p/10827080.html

addShutdownHook钩子相关推荐

  1. Java Signal实例

     http://wangym.iteye.com/blog/733693 TimYang在博文<降低应用latency方法谈> 中提到对Java方法进行Profiling,在某些场景更 ...

  2. dll 源码_【技术分享】 | 一个JAVA内存马的源码分析

    前言 偶然接触到了这样一个JAVA内存马,其作者也是冰蝎的作者,项目地址: https://github.com/rebeyond/memShell 正好最近在接触JAVA,借此机会学习下大佬的代码, ...

  3. 连接池:别让连接池帮了倒忙

    今天,我再与你说说另一种很重要的池化技术,即连接池. 我先和你说说连接池的结构.连接池一般对外提供获得连接.归还连接的接口给客户端使用,并暴露最小空闲连接数.最大连接数等可配置参数,在内部则实现连接建 ...

  4. java stop有实现吗_Java 如何实现优雅停服?刨根问底

    在 Java 的世界里遨游,如果能拥有一双善于发现的眼睛,有很多东西留心去看,外加耐心助力,仔细去品,往往会品出不一样的味道. 通过本次分享,能让你轻松 get 如下几点,绝对收获满满. a)如何让 ...

  5. JAVA设计模式第四讲:行为型设计模式

    设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案.本文以面试题作为切入点,介绍了设计模式的常见问题.我们需要掌握各种设计模式的原理.实现.设计意图和应用场景, ...

  6. 【转载保存】RunTime.getRunTime().addShutdownHook 添加钩子

    https://blog.csdn.net/gongxinju/article/details/69963099

  7. Runtime.getRuntime().addShutdownHook(new Thread()

    Runtime.getRuntime().addShutdownHook(new Thread() 2008-12-16 15:16 为您的Java应用程序添加退出事件处理 ------------- ...

  8. java 线程崩溃_java语言中application异常退出和线程异常崩溃的捕获方法,并且在捕获的钩子方法中进行异常处理...

    1.application应用程序注入自定义钩子程序 java语言本身提供一个很好的Runtime类,可以使我们很好的获取运行时信息.其中有一个方法是 public void addShutdownH ...

  9. nodemanager不能正常关闭_Java虚拟机关闭钩子(Shutdown hook)

    作者:俩右 出处:https://segmentfault.com/a/1190000038298447 源码点击 study:https://github.com/xiaoshuanglee/stu ...

最新文章

  1. h5ai搭建自己的文件分享程序
  2. 成功解决ModuleNotFoundError: No module named 'scipy._lib._ccallback'
  3. 统计学习:基本常用公式(1)
  4. 俄罗斯无人机公司Hoversrf紧随Volocopter步伐,酷炫“方程式”飞行汽车来袭
  5. weexpack占据的存储空间
  6. comboBox绑定数据库后SelectedIndexChanged事件出错
  7. Alter-有意思的小游戏
  8. ffmpeg的编译(for x86,for arm)安装及使用(网络资料整理)
  9. 产品经理如何培养气场
  10. 问题解决:java.sql.SQLException:Value '0000-00-00' can not be represented as java.sql.Date
  11. java 网络实验_java网络聊天室实验
  12. VS2010 C++工程运行提示找不到MSVCP100D.dll
  13. MapReduce编程快速入门
  14. 23 种设计模式(Java代码演示版)
  15. java中Scanner,Randon,ArrayList
  16. 级数收敛与交换运算顺序
  17. 域渗透基础_域渗透实战下gpo策略利用
  18. WIX插件安装包的生成(三) 批量导入文件
  19. 电子商务中如何使用大数据
  20. 【Hive】大数据的排序和拼接

热门文章

  1. Java 多线程之 synchronized 和 volatile 的比较
  2. Jenkins持续集成环境之Maven的安装和配置
  3. Java-Web HTTP协议
  4. key+value实现动态字段的存储设计
  5. java swing 弹出登录框_用JavaSwing制作一个简单的登录框
  6. android unity hook,[原创]Unity3d安卓游戏DLL动态调式与HOOK基础
  7. 极限中0除以常数_高中物理必知的50个关键常数
  8. 如何做好数字化体验管理,了解一下?
  9. 以下哪个选项不能减少用户计算机,2017年cad考试选择题「附答案」
  10. seaborn常用图