Partager via


BufferedStream.Close Méthode

Définition

Ferme le flux et libère toutes les ressources (en particulier les ressources système telles que les sockets et les handles de fichiers) associées au flux actuel en mémoire tampon.

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

Exceptions

Une erreur s’est produite durant la tentative de fermeture du flux.

Exemples

Cet exemple de code fait partie d’un exemple plus grand fourni pour la 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();

Remarques

Toutes les données précédemment écrites dans la mémoire tampon sont copiées dans la source de données ou le référentiel sous-jacent avant la fermeture du flux mis en mémoire tampon. Par conséquent, il n’est pas nécessaire d’appeler Flush() close avant d’appeler Close. Après un appel à Fermer, toutes les opérations sur le flux mis en mémoire tampon peuvent déclencher des exceptions.

Le vidage du flux ne videra pas son encodeur sous-jacent, sauf si vous appelez Flush() explicitement ou fermez. La définition de la valeur AutoFlush true signifie que les données seront vidées de la mémoire tampon dans le flux, mais que l’état de l’encodeur ne sera pas vidé. Cela permet à l’encodeur de conserver son état (caractères partiels) afin qu’il puisse encoder correctement le bloc de caractères suivant. Ce scénario affecte UTF8 et UTF7 où certains caractères ne peuvent être encodés qu’une fois que l’encodeur a reçu le ou les caractères adjacents.

Une tentative de manipulation d’un flux après sa fermeture peut lever un ObjectDisposedException.

S’applique à

Voir aussi