En C# es posible crear referencias débiles a objetos tal como se describe aquí:referencias débiles y objetos desechables
En algunas clases de .NET también implementar la interfaz IDisposable. La llamada al método Dispose de esta interfaz se realiza para deshacerse manualmente de los recursos administrados o no administrados que se están reteniendo actualmente. Un ejemplo podría ser un objeto o clase de mapa de bits.
Si asigno un objeto que implementa IDisposable a una referencia débil, ¿se invocará Dispose si la referencia débil recoge el objeto?
¿Qué quiere decir con "WeakReference", recogiendo sus objetos? es solo una referencia débil, es decir, el objeto al que apunta puede ser recolectado por el recolector de basura. En este caso, todo lo que usted sabe sobre el recolector de basura se aplica ... – flq
Como Frank dijo, el recolector de basura solo recogerá el objeto. Esto a su vez activará el finalizador, si tiene uno. El método Dispose nunca se activará. – Steffen