Compartir a través de


BufferedStream.Close Método

Definición

Cierra la secuencia y libera los recursos (especialmente recursos del sistema como sockets e identificadores de archivos) asociados a la secuencia actual en el búfer.

public:
 override void Close();
public override void Close ();
override this.Close : unit -> unit
Public Overrides Sub Close ()

Excepciones

Error al intentar cerrar la secuencia.

Ejemplos

Este ejemplo de código es parte de un ejemplo más grande proporcionado para la clase BufferedStream.

' 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();

Comentarios

Los datos escritos anteriormente en el búfer se copian en el origen de datos o repositorio subyacente antes de que se cierre la secuencia almacenada en búfer. Por lo tanto, no es necesario llamar Flush() a antes de invocar Close. Después de una llamada a Close, cualquier operación en el flujo almacenado en búfer podría generar excepciones.

El vaciado de la secuencia no vaciará su codificador subyacente a menos que llame Flush() explícitamente a o Cierre. Si se establece AutoFlush en true, los datos se vaciarán del búfer a la secuencia, pero el estado del codificador no se vaciará. Esto permite al codificador mantener su estado (caracteres parciales) para que pueda codificar correctamente el siguiente bloque de caracteres. Este escenario afecta a UTF8 y UTF7, donde determinados caracteres solo se pueden codificar después de que el codificador reciba el carácter o caracteres adyacentes.

Si se intenta manipular una secuencia después de cerrarla, se podría producir una ObjectDisposedExceptionexcepción .

Se aplica a

Consulte también