Existe-t-il un modèle recommandé pour fermer/fermer des objets créés avec Guice?Gestion à vie avec Google Guice
Le cycle de vie que je vise est:
- Préparer un module Guice
- Créer un injecteur
- Utilisez l'injecteur à travers votre code pour obtenir des objets (
injector.getInstance(Foo.class)
) - ...
- Fermez toutes les ressources détenues par les objets (handles de fichiers, connexions TCP, etc ...). Je veux que ce soit une étape déterministe (pas "un jour où le GC fonctionne").
Vous pouvez ajouter quelques exemples de code à votre question, parce que je ne comprends pas vraiment ce que tu veux dire. – dlinsin
Ajout d'un peu plus de détails. – ripper234
"Utilisez l'injecteur à travers votre code pour obtenir des objets (injector.getInstance (Foo.class))" - c'est décidément * pas * comment Guice, ou toute DI, est destiné à être utilisé. C'est juste un localisateur de service. Il devrait construire votre graphe d'objet et l'injecteur ne devrait être créé et référencé que dans une classe de bootstrappeur racine. – ColinD