BufferedStream.Close Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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 .