¿Tiene una clase contenedora de llamar a un componente COM a C # necesidad de implementar el patrón botar?
Pregunta
Tengo una clase en C # que está actuando como una envoltura alrededor de un componente COM. El componente COM está obligado temprana y la RCW ha sido generado por Visual Studio. Debería aplicar un patrón disponer en mi clase de contenedor para limpiar la referencia COM, o debo dejar que el GC manejarlo, ya que ya tiene un RCW?
Solución
No es rara vez una necesidad para aplicar Desechar pero a menudo hay buenas razones para hacerlo.
Si el objeto COM representa un recurso importante que necesita ser liberado rápidamente entonces que podría ser una buena razón para poner en práctica Desechar.
En el método dispose que puede hacer: -
System.Runtime.InteropServices.Marshal.ReleaseComObject(myRCW);
Por lo tanto, la eliminación de su clase dará a conocer el objeto COM de inmediato.