BufferedStream.Close Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fecha o fluxo e libera todos os recursos (especialmente recursos de sistema, como soquetes e identificadores de arquivos) associados ao fluxo em buffer atual.
public:
override void Close();
public override void Close ();
override this.Close : unit -> unit
Public Overrides Sub Close ()
Exceções
Ocorreu um erro ao tentar fechar o fluxo.
Exemplos
Este exemplo de código faz parte de um exemplo maior fornecido para a BufferedStream classe .
' When bufStream is closed, netStream is in turn
' closed, which in turn shuts down the connection
' and closes clientSocket.
Console.WriteLine(vbCrLf & "Shutting down the connection.")
bufStream.Close()
// When bufStream is closed, netStream is in turn
// closed, which in turn shuts down the connection
// and closes clientSocket.
Console.WriteLine("\nShutting down the connection.");
bufStream.Close();
// When bufStream is closed, netStream is in turn closed,
// which in turn shuts down the connection and closes
// clientSocket.
Console::WriteLine( "\nShutting down connection." );
bufStream->Close();
Comentários
Todos os dados gravados anteriormente no buffer são copiados para a fonte de dados ou repositório subjacente antes que o fluxo armazenado em buffer seja fechado. Portanto, não é necessário chamar Flush() antes de invocar Close. Após uma chamada para Fechar, todas as operações no fluxo armazenado em buffer podem gerar exceções.
A liberação do fluxo não liberará seu codificador subjacente, a menos que você chame Flush() ou feche explicitamente. Definir AutoFlush como true significa que os dados serão liberados do buffer para o fluxo, mas o estado do codificador não será liberado. Isso permite que o codificador mantenha seu estado (caracteres parciais) para que ele possa codificar o próximo bloco de caracteres corretamente. Esse cenário afeta UTF8 e UTF7, em que determinados caracteres só podem ser codificados depois que o codificador recebe o caractere ou caracteres adjacentes.
Tentar manipular um fluxo depois que ele tiver sido fechado pode gerar um ObjectDisposedException.