Lire en anglais

Partager via


Debug.Flush Méthode

Définition

Vide la mémoire tampon de sortie et entraîne l’écriture des données mises en mémoire tampon dans la collection Listeners.

C#
[System.Diagnostics.Conditional("DEBUG")]
public static void Flush ();
Attributs

Exemples

L’exemple suivant crée un TextWriterTraceListener nommé myTextListener. myTextListener utilise un FileStream appelé myFileStream pour écrire dans un fichier nommé TestFile.txt. L’exemple crée le flux, ouvre le fichier s’il existe ou en crée un nouveau, écrit une ligne de texte dans le fichier, puis vide et ferme la sortie.

C#
// 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();
        }
    }
}

Remarques

Le vidage du flux ne videra pas son encodeur sous-jacent, sauf si vous appelez Flush explicitement ou Close. La définition de AutoFlush sur 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é. 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.

S’applique à

Produit Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Voir aussi