Compartilhar via


IClosable.Close Método

Definição

Libera recursos do sistema expostos por um objeto Windows Runtime.

.NET Essa interface aparece como System.IDisposable.

C++/CX Essa interface aparece como Platform::IDisposable.

public:
 void Close();
void Close();
public void Close();
function close()
Public Sub Close ()

Comentários

As notas de implementação/chamador a seguir são principalmente relevantes para o WRL.

Anotações aos implementadores

Implemente esse método para liberar os recursos exclusivos do sistema que estão em uso, como identificadores de arquivo, fluxos e soquetes de rede. O método também deve liberar outros recursos que estão em uso, incluindo referências de objeto e memória, para prepará-los para reutilização.

Esse método deve chamar o método Close de qualquer objeto que ele contém que implemente IClosable.

O método Close deve liberar recursos do sistema o mais rápido possível, sem bloquear a conclusão de operações assíncronas. Para garantir que todos os recursos sejam totalmente liberados, o chamador deve aguardar a conclusão de todas as operações assíncronas pendentes antes de chamar Fechar.

Depois que Close retorna, o objeto ainda está na memória, mas sem os recursos do sistema necessários; portanto, a maioria de seus membros não são utilizáveis. Um membro que depende de um recurso do sistema liberado pode retornar RO_E_CLOSED para indicar que o objeto está fechado e não pode concluir a operação solicitada.

Anotações aos chamadores

Se você chamar Fechar várias vezes, não haverá efeito; o método retorna S_OK.

Métodos close não podem ser chamados por meio de C++/CX em instâncias de classe Windows Runtime em que a classe implementou IClosable, mas são chamados automaticamente no final do escopo atual. O código C++/CX para classes de runtime deve chamar o destruidor ou definir a última referência como nula.

Em C#, esse método é exposto como Dispose. Você pode chamar Dispose diretamente ou usar uma instrução using.

Aplica-se a