Debug.Flush 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í.
Vyprázdní výstupní vyrovnávací paměť a způsobí zápis dat do vyrovnávací paměti do Listeners kolekce.
public:
static void Flush();
[System.Diagnostics.Conditional("DEBUG")]
public static void Flush();
[<System.Diagnostics.Conditional("DEBUG")>]
static member Flush : unit -> unit
Public Shared Sub Flush ()
- Atributy
Příklady
Následující příklad vytvoří pojmenovaný TextWriterTraceListenermyTextListener.
myTextListener
FileStream používá volána myFileStream k zápisu do souboru s názvem TestFile.txt. Příklad vytvoří datový proud, otevře soubor, pokud existuje nebo vytvoří nový, zapíše do souboru jeden řádek textu a pak vyprázdní a zavře výstup.
// Specify /d:DEBUG when compiling.
using System;
using System.IO;
using System.Diagnostics;
class Test
{
static void Main()
{
// Create a new stream object for an output file named TestFile.txt.
using (FileStream myFileStream =
new FileStream("TestFile.txt", FileMode.Append))
{
// Add the stream object to the trace listeners.
TextWriterTraceListener myTextListener =
new TextWriterTraceListener(myFileStream);
Debug.Listeners.Add(myTextListener);
// Write output to the file.
Debug.WriteLine("Test output");
// Flush and close the output stream.
Debug.Flush();
Debug.Close();
}
}
}
' Specify /d:DEBUG=True when compiling.
Imports System.IO
Imports System.Diagnostics
Class Test
Shared Sub Main()
' Create a new stream object for an output file named TestFile.txt.
Using myFileStream As New FileStream("TestFile.txt", FileMode.Append)
' Add the stream object to the trace listeners.
Dim myTextListener As New TextWriterTraceListener(myFileStream)
Debug.Listeners.Add(myTextListener)
' Write output to the file.
Debug.WriteLine("Test output")
' Flush and close the output stream.
Debug.Flush()
Debug.Close()
End Using
End Sub
End Class
Poznámky
Vyprázdnění datového proudu nevyprázdní jeho podkladový kodér, pokud explicitně nezavoláte Flush nebo Close. Nastavení AutoFlush znamená true , že se data vyprázdní z vyrovnávací paměti do datového proudu, ale stav kodéru se nevyprázdní. Kodér tak může zachovat svůj stav (částečné znaky), aby mohl správně zakódovat další blok znaků. Tento scénář má vliv na UTF8 a UTF7, kde se určité znaky dají zakódovat až po přijetí sousedního znaku nebo znaků kodérem.