Cómo: Liberar recursos con un bloque Try...Finally en Visual Basic
Una instrucción Finally se puede utilizar dentro de un bloque Try para garantizar que los recursos asignados estén limpios. El código en un bloque Finally se ejecuta después del código del control de excepciones, pero antes de que el control vuelva al procedimiento de llamada. El código de un bloque Finally se ejecuta incluso si el código produce una excepción e incluso si agrega una instrucción explícita Exit Function (o Exit Sub) dentro de un bloque Catch.
Si no necesita detectar excepciones específicas, la instrucción Using se comporta como un bloque Try…Finally y garantiza la disposición de los recursos, independientemente de cómo salga del bloque. Esto es verdad incluso en el caso de una excepción no controlada. Para obtener más información, vea Using (Instrucción, Visual Basic).
Para limpiar los recursos con una instrucción Finally
Coloque el código que le gustaría ejecutar sin tener en cuenta las excepciones dentro del bloque Finally. El código siguiente crea StreamReader y lo utiliza para leer un archivo.
Dim reader As New System.IO.StreamReader("C:\testfile") Try reader.ReadToEnd() Catch ex As System.IO.IOException MsgBox("Could not read file") Finally 'This command is executed whether or not the file can be read reader.Close() End Try
Vea también
Tareas
Cómo: Comprobar código con un bloque Try...Catch en Visual Basic
Cómo: Comprobar la excepción interna de una excepción (Visual Basic)
Cómo: Deshacerse de un recurso del sistema (Visual Basic)
Referencia
Using (Instrucción, Visual Basic)