Dato un oggetto, c'è un modo per ottenere la notifica di quando quell'oggetto è garbage collection?. NET: un modo per sapere quando un oggetto viene smaltito/eliminato?
Sto giocando con i metodi di estensione C# che si comportano un po 'più come mixin (in particolare nell'aggiunta della registrazione). Quindi praticamente ogni oggetto ottiene un nuovo metodo Logger() che restituisce un ILog che viene creato e memorizzato nella cache a seconda dell'oggetto che è il target del metodo di estensione.
Funziona molto bene, l'unica preoccupazione è ovviamente dopo che un oggetto va via il suo logger potrebbe rimanere in giro per un po 'di tempo. Ovviamente potrei impostare un meccanismo periodico per spazzare la cache del logger e cancellarlo, ma preferirei impostare una notifica di Garbage Collection in modo da sapere quando il sistema non usa più i miei oggetti.
Qualcuno sa di un modo per farlo?
+1, maledizione, ha rubato la mia risposta haha – heisenberg