Usando objetos encapsular recursos

Quando você gravar código que usa um objeto que encapsula um recurso, você deve certificar-se que Descartar método chamado quando você terminar de usar o objeto.Você pode fazer isso com o translation from VPE for Csharp usando o demonstrativo ou implementando um try/finally bloquear em outros idiomas destinados a Common linguagem tempo de execução.

Translation from VPE for Csharp usando demonstrativo

Translation from VPE for Csharp programação usando o demonstrativo faz uma telefonar para o Descartar método mais automático, simplificando o código que você deve gravar para criar e limpar um objeto.The usando o demonstrativo obtém um ou mais recursos, executa as instruções que você especificar e, em seguida, descarta do objeto.Observe que o usando o demonstrativo só é útil para objetos com um tempo de vida não se estende além do método no qual o objeto seja construído.O exemplo de código a seguir cria e limpa uma instância do ResourceWrapper clsistema autônomos, sistema autônomo ilustrado no exemplo translation from VPE for Csharp de Implementando um método Dispose.

class myApp
{
   public static void Main()
   {
      using (ResourceWrapper r1 = new ResourceWrapper())
      {
         // Do something with the object.
         r1.DoSomething();
      }
   }
}

O código anterior, incorporando o usando o demonstrativo, é equivalente à seguinte.

class myApp
{
   public static void Main()
   {
      ResourceWrapper r1 = new ResourceWrapper();
      try
      {
         // Do something with the object.
         r1.DoSomething();
      }
      finally
      {
         // Check for a null resource.
         if (r1 != null)
         // Call the object's Dispose method.
         r1.Dispose();
      }
   }
}

The C# usando o demonstrativo permite que você adquira vários recursos em uma única demonstrativo equivale internamente a aninhados usando o instruções.Para mais informações e um exemplo de código, consulte Usando Instrução (Referência C#).

Bloco Try/Finally

Quando você escreve código gerenciado que usa um objeto que encapsula um recurso em idiomas Outros than translation from VPE for Csharp, usar um bloco try/finally para garantir que uma telefonar é feita Descartar método.O exemplo de código a seguir cria e limpa uma instância do Recurso classe, conforme ilustrado no exemplo Visual Basic de Implementando um método Dispose.

class myApp
   Public Shared Sub Main()
      Resource r1 = new Resource()
      Try
         ' Do something with the object.
         r1.DoSomething()
      Finally
         ' Check for a null resource.
         If Not (r1 is Nothing) Then
            ' Call the object's Dispose method.
            r1.Dispose()
         End If
      End Try
   End Sub
End Class

Consulte também

Referência

Usando Instrução (Referência C#)

Outros recursos

Limpeza de recursos não gerenciados