StreamWriter.AutoFlush Propriété

Définition

Obtient ou définit une valeur indiquant si StreamWriter vide sa mémoire tampon vers le flux sous-jacent après chaque appel à Write(Char).

public:
 virtual property bool AutoFlush { bool get(); void set(bool value); };
public virtual bool AutoFlush { get; set; }
member this.AutoFlush : bool with get, set
Public Overridable Property AutoFlush As Boolean

Valeur de propriété

true pour forcer StreamWriter à vider sa mémoire tampon ; sinon, false.

Exemples

L’exemple suivant montre la syntaxe de l’utilisation de la AutoFlush propriété .

// Gets or sets a value indicating whether the StreamWriter
// will flush its buffer to the underlying stream after every 
// call to StreamWriter.Write.
sw->AutoFlush = true;
// Gets or sets a value indicating whether the StreamWriter
// will flush its buffer to the underlying stream after every
// call to StreamWriter.Write.
sw.AutoFlush = true;
' Gets or sets a value indicating whether the StreamWriter
' will flush its buffer to the underlying stream after every 
' call to StreamWriter.Write.
Sw.AutoFlush = True

Remarques

Le vidage du flux ne videra pas son encodeur sous-jacent, sauf si vous appelez Flush explicitement ou Close. La définition AutoFlush de sur true signifie que les données seront vidées de la mémoire tampon vers le flux après chaque opération d’écriture, 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.

Quand AutoFlush est défini sur false, StreamWriter effectue une quantité limitée de mise en mémoire tampon, à la fois en interne et potentiellement dans l’encodeur à partir de l’encodage que vous avez passé. Vous pouvez obtenir de meilleures performances en définissant AutoFlush sur false, en supposant que vous appelez Close toujours (ou au moins Flush) lorsque vous avez terminé d’écrire avec un StreamWriter.

Par exemple, définissez AutoFlush sur true lorsque vous écrivez sur un appareil où l’utilisateur attend des commentaires immédiats. Console.Out est l’un de ces cas : utilisé StreamWriter en interne pour écrire pour vider tout son état interne à Console l’exception de l’état de l’encodeur après chaque appel à StreamWriter.Write.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches courantes d’E/S.

S’applique à

Voir aussi