Java实现生命周期管理机制.docxVIP

  • 5
  • 0
  • 约9.79千字
  • 约 19页
  • 2017-01-22 发布于重庆
  • 举报
最近一直在研究某个国产开源的MySQL数据库中间件,拉下其最新版的代码到eclipse后,启动起来,然后做各种测试和代码追踪;用完想要关闭它时,拉出它的STOP类想要运行时,发现这个类里赫然只写以下几行代码,于是我感觉瞬间受到了很多伤害。 public static void main(String[] args) { System.out.println(new Date() + ,server shutdown!); }这个中间件启动和运行的时候,开启了监听,启动着许多线程在跑着,并且有许多socket连接。但是并没有找到一个优雅的方式将其关闭。于是无奈之下,我只能去点eclipse的心碎小红点,强行停掉VM。如果是一个架构良好,模块化清晰的软件,特别是Server类的软件,拥有一套生命周期管理机制是非常重要的。不仅可以管理各个模块的生命周期,也可以在启停整个软件的时候更优雅,不会漏掉任何资源。生命周期机制简易实现生命周期状态一个模块的生命周期状态一般有以下几个:新生 - 初始化中 - 初始化完成 - 启动中 - 启动完成 - 正在暂停 - 已经暂停 - 正在恢复 - 已经恢复 - 正在销毁 - 已经销毁其中,任何一个状态之间的转化如果失败,那么就会进入另外一种状态:失败。为此,可以用一个枚举类来枚举出这几个状态,如下所示:public enum LifecycleState

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档