Spring Bean销毁流程

Spring中ApplicationContext的close方法执行流程:

 1、发布关闭事件

2、执行lifeCycleProcess的close方法

3、执行destroyBeans()方法;

注释原文:// Destroy all cached singletons in the context's BeanFactory.  销毁上下文BeanFactory中所有缓存的单例对象

 

3.1、找到所有的DisposableBean

3.2、遍历找出所有依赖了当前DisposableBean的所有bean,将这些bean从单例池中移除

3.3、调用了DisposableBean的destroy方法

3.4、找到当前bean的所有inner Bean,将这些Inner Bean全部移除掉

原文地址:https://www.cnblogs.com/yibao/p/13897862.html