Compartilhar via


Método CriticalHandle.Close ()

 

Dica

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Marca o identificador de liberação de recursos.

Namespace:   System.Runtime.InteropServices
Assembly:  mscorlib (em mscorlib.dll)

Sintaxe

[SecurityCriticalAttribute]
public void Close()
public:
[SecurityCriticalAttribute]
void Close()
[<SecurityCriticalAttribute>]
member Close : unit -> unit
<SecurityCriticalAttribute>
Public Sub Close

Comentários

Chamando o Close ou Dispose método permite que os recursos sejam liberados. Ao contrário de SafeHandle classe, isso acontecerá sempre imediatamente porque não há nenhuma contagem de referência para indicar que outro thread está usando esse identificador. Portanto, você deve empregar um mecanismo de sincronização para garantir que ele é seguro chamar o Close método. Embora a maioria das classes que usam o CriticalHandle classe não é necessário fornecer um finalizador, isso às vezes é necessário (por exemplo, para liberar os buffers de arquivo ou escrever alguns dados de volta para a memória). Nesse caso, a classe pode fornecer um finalizador que sempre é executado antes do CriticalHandle executa finalizador crítico.

Chamar o Close ou Dispose método quando tiver terminado de usar o CriticalHandle objeto. O Close método deixa o CriticalHandle objeto em um estado inutilizável.

Observação sempre chamada Close ou Dispose antes de liberar sua última referência para o CriticalHandle objeto. Caso contrário, os recursos que está usando não serão liberados até que o coletor de lixo chame o CriticalHandle do objeto Finalize método.

Informações de Versão

.NET Framework
Disponível desde 2.0
Silverlight
Disponível desde 2.0

Confira Também

Classe CriticalHandle
Namespace System.Runtime.InteropServices

Retornar ao início