Stream.Close Méthode

Définition

Ferme le flux actuel et libère toutes les ressources (comme les sockets et les handles de fichiers) associées à celui-ci.Closes the current stream and releases any resources (such as sockets and file handles) associated with the current stream. Au lieu d'appeler cette méthode, assurez-vous que le flux est correctement supprimé.Instead of calling this method, ensure that the stream is properly disposed.

public:
 virtual void Close();
public virtual void Close ();
abstract member Close : unit -> unit
override this.Close : unit -> unit
Public Overridable Sub Close ()

Remarques

Cette méthode appelle Dispose , en spécifiant true pour libérer toutes les ressources.This method calls Dispose, specifying true to release all resources. Vous n’avez pas à appeler la Close méthode spécifiquement.You do not have to specifically call the Close method. Au lieu de cela, assurez-vous que chaque Stream objet est correctement supprimé.Instead, ensure that every Stream object is properly disposed. Vous pouvez déclarer des Stream objets dans un using bloc (ou un Using bloc dans Visual Basic) pour vous assurer que le flux et toutes ses ressources sont supprimés, ou vous pouvez appeler explicitement la Dispose méthode.You can declare Stream objects within a using block (or Using block in Visual Basic) to ensure that the stream and all of its resources are disposed, or you can explicitly call the Dispose method.

Le vidage du flux ne vide pas son encodeur sous-jacent, sauf si vous appelez explicitement une implémentation de Flush ou Close .Flushing the stream will not flush its underlying encoder unless you explicitly call an implementation of Flush or Close. La définition de la valeur AutoFlush true signifie que les données seront vidées de la mémoire tampon vers le flux, mais que l’état de l’encodeur ne sera pas vidé.Setting AutoFlush to true means that data will be flushed from the buffer to the stream, but the encoder state will not be flushed. Cela permet à l’encodeur de conserver son état (caractères partiels) afin qu’il puisse coder correctement le bloc de caractères suivant.This allows the encoder to keep its state (partial characters) so that it can encode the next block of characters correctly. Ce scénario affecte UTF8 et UTF7, où certains caractères peuvent être encodés uniquement après que l’encodeur a reçu le ou les caractères adjacents.This scenario affects UTF8 and UTF7 where certain characters can be encoded only after the encoder receives the adjacent character or characters.

Toute tentative de manipulation du flux une fois que le flux a été fermé peut lever une ObjectDisposedException .Attempts to manipulate the stream after the stream has been closed might throw an ObjectDisposedException.

Notes pour les héritiers

Dans les classes dérivées, ne substituez pas la Close() méthode, mais Placez l’ensemble de la Stream logique de nettoyage dans la Dispose(Boolean) méthode.In derived classes, do not override the Close() method, instead, put all of the Stream cleanup logic in the Dispose(Boolean) method. Pour plus d’informations, consultez implémentation d’une méthode dispose.For more information, see Implementing a Dispose Method.

S’applique à