2009-07-24 7 views
0

Si j'ai une appCtx principale et que j'ai une série d'appCtx séparés qui se réfèrent à la principale comme parent, alors je peux destory les contextes enfants pour libérer de la mémoire ? En effet, je veux utiliser l'enfant appCtxs comme cache d'objet et je veux avoir la possibilité de dire à un cache spécifique - "Je n'utilise plus les beans dans ce cache, donc je veux libérer de la mémoire En appelant appCtx.close() "Utilisation de plusieurs ApplicationContexts dans Spring - question sur le nettoyage des ressources

J'ai essayé le prototypage mais je ne suis pas sûr si les références du bean dans les contextes enfants sont réellement supprimées - en d'autres termes, après close() sont les beans disponibles pour la récupération de place ?

Je réalise que c'est une façon différente d'utiliser Spring, mais mon application est différente et j'ai épuisé toutes les autres possibilités (portées personnalisées, SingletonBeanFactoryLocator, etc.).

Répondre

2

Oui, l'appel close() va release all resources. Les haricots seront éligibles pour la collecte des ordures à condition qu'il n'y ait pas d'autres références à ceux-ci.

Questions connexes