StreamWriter.AutoFlush Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un valor que indica si StreamWriter vaciará su búfer en la secuencia subyacente después de cada llamada a 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
Valor de propiedad
Es true
para que StreamWriter vacíe su búfer; en caso contrario, es false
.
Ejemplos
En el ejemplo siguiente se muestra la sintaxis para usar la AutoFlush
propiedad .
// 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
Comentarios
El vaciado de la secuencia no vaciará su codificador subyacente a menos que llame explícitamente a Flush o Close. Establecer AutoFlush en true
significa que los datos se vaciarán del búfer a la secuencia después de cada operación de escritura, pero el estado del codificador no se vaciará. Esto permite al codificador mantener su estado (caracteres parciales) para que pueda codificar correctamente el siguiente bloque de caracteres. Este escenario afecta a UTF8 y UTF7, donde determinados caracteres solo se pueden codificar después de que el codificador reciba el carácter o caracteres adyacentes.
Cuando AutoFlush
se establece false
en , StreamWriter
realizará una cantidad limitada de almacenamiento en búfer, tanto interna como potencialmente en el codificador de la codificación que pasó. Puede obtener un mejor rendimiento estableciendo AutoFlush
false
en , suponiendo que siempre llame a Close
(o al menos Flush
) cuando haya terminado de escribir con .StreamWriter
Por ejemplo, establezca en AutoFlush
true
cuando se escribe en un dispositivo donde el usuario espera comentarios inmediatos. Console.Out
es uno de estos casos: el StreamWriter
utilizado internamente para escribir Console
para vaciar todo su estado interno, excepto el estado del codificador después de cada llamada a StreamWriter.Write.
Para obtener una lista de las tareas de E/S comunes, consulte Tareas de E/S comunes.