使用延迟加载的单例 bean 时,Spring 是否会以某种方式优化内存使用?
假设我们有一个代表某个模块(应用程序框架/窗口)的单例 bean,它是惰性的。这个 bean 加载了一些类,这些类是这个框架的组件,并且没有在 Spring 的 IoC 容器中定义。
假设我们关闭了模块JFrame
,frame 的所有组件通常都应该被垃圾回收,但它们仍然被 spring bean 引用。
spring 在这种情况下会优化内存使用吗?
准确地说,我不是在问原型,而是在问单例。因为我们有奇怪的行为,在关闭窗口时会释放使用 Spring 单例的内存。当我们为窗口使用原型 bean 时,会释放更多的内存。