Limpiar recursos no administrados
Debe evitar que los usuarios de la aplicación llamen directamente al método Finalize de un objeto; para ello, limite su ámbito a protected. Además, es totalmente desaconsejable llamar a un método Finalize de una clase que no sea la clase base directamente desde el código de la aplicación. Para deshacerse correctamente de los recursos no administrados, se recomienda que implemente un método Dispose o Close público que ejecute el código de limpieza necesario para el objeto. La interfaz IDisposable proporciona el método Dispose para las clases de recursos que implemente la interfaz. Dado que es pública, los usuarios de la aplicación pueden llamar directamente al método Dispose para liberar la memoria asignada a los recursos no administrados. Cuando se implementa un método Dispose correctamente, el método Finalize se convierte en una medida de seguridad para limpiar los recursos en caso de que no se llame al método Dispose. Para obtener más información sobre una implementación correcta, vea Implementar un método Dispose.
En esta sección
- Implementar un método Dispose
Describe la implementación del método Dispose para liberar recursos no administrados.
- Reemplazar el método Finalize
Describe la forma en la que los métodos Finalize y Dispose trabajan juntos.
- Sintaxis de destructores en C# y C++
Describe los equivalentes de C# y C++ del método Finalize.
- Usar objetos que encapsulan recursos
Describe formas de garantizar que se llama al método Dispose, como la instrucción using de C# (Using en Visual Basic).
Referencia
- IDisposable
Define el método Dispose para liberar recursos no administrados.