遅延ロードされたシングルトン Bean を使用する場合、Spring は何らかの方法でメモリ使用量を最適化しますか?
いくつかのモジュール (アプリケーション フレーム/ウィンドウ) を表すシングルトン Bean があり、それが遅延しているとします。この Bean は、このフレームのコンポーネントであり、Spring の IoC コンテナーで定義されていないいくつかのクラスをロードします。
モジュールを閉じると仮定するとJFrame
、フレームのすべてのコンポーネントは通常、ガベージ コレクションされるはずですが、Spring Bean によって参照されます。
この状況でスプリングはメモリ使用量を最適化しますか?
正確には、プロトタイプについてではなく、シングルトンについて質問しています。ウィンドウを閉じると、Springシングルトンのメモリが解放されるという奇妙な動作があるためです。ウィンドウにプロトタイプ Bean を使用すると、さらに多くのメモリが解放されます。