J'ai besoin d'un moyen de suivre les instances de diverses classes, sans que ces classes aient connaissance du suivi de ces dernières. Essentiellement, j'ai une usine de classe qui crée des instances et les remet à un autre thread. Une fois ce thread terminé et déchargé l'instance, j'ai besoin d'être averti de cela afin que je puisse faire le comptage des références et quitter la fabrique de ma classe lorsque toutes les instances ont disparu. Le problème est que je ne peux pas modifier les classes que je vais charger, parce que je ne contrôle pas leur code source.Recevoir une notification d'élimination/destruction d'objets
Suivre les instances que je crée est simple, je peux simplement les mettre dans une sorte de collection que je les crée. Suivre leur destruction me cause des problèmes. Si je pouvais modifier le code source, j'ajouterais un événement à chaque classe et quand je créerais une instance, j'accèderais à l'événement et l'utiliserais comme notification. Mais je ne peux pas faire ça. Donc, la question est la suivante: y a-t-il une façon sournoise de surveiller une instance d'objet et de détecter quand elle est détruite?
+1 C'est drôle - je pensais exactement la même chose, jusqu'à ce que je lise la partie où il disait qu'il contrôlait la construction des objets;) –
Cela ressemble effectivement à ce qui pourrait être la solution la plus réalisable dans ma situation. Je vais essayer. –
Je préfère le vôtre à celui de Reed car cela signifie que les clients de ce type n'ont pas besoin de connaître un type de décorateur spécial –