BufferedStream.Close Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zavře datový proud a uvolní všechny prostředky (zejména systémové prostředky, jako jsou sokety a popisovače souborů) přidružené k aktuálnímu datovému proudu ve vyrovnávací paměti.
public:
override void Close();
public override void Close ();
override this.Close : unit -> unit
Public Overrides Sub Close ()
Výjimky
Při pokusu o zavření datového proudu došlo k chybě.
Příklady
Tento příklad kódu je součástí většího příkladu BufferedStream pro třídu .
' 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();
Poznámky
Všechna data, která byla dříve zapsána do vyrovnávací paměti, se zkopírují do podkladového zdroje dat nebo úložiště před uzavřením datového proudu ve vyrovnávací paměti. Proto není nutné volat Flush() před vyvoláním Close. Po volání Close můžou všechny operace s datovým proudem ve vyrovnávací paměti vyvolat výjimky.
Vyprázdnění datového proudu nevyprázdní jeho základní kodér, pokud ho explicitně nezavoláte Flush() nebo nezavřete. Nastavení AutoFlush na hodnotu true znamená, že se data vyprázdní z vyrovnávací paměti do datového proudu, ale stav kodéru se nevyprázdní. To umožňuje kodéru zachovat svůj stav (částečné znaky), aby mohl správně zakódovat další blok znaků. Tento scénář má vliv na kódování UTF8 a UTF7, kde určité znaky lze zakódovat až poté, co kodér přijme sousední znak nebo znaky.
Při pokusu o manipulaci s datovým proudem po jeho zavření může dojít k chybě ObjectDisposedException.