StreamWriter.AutoFlush Właściwość

Definicja

Pobiera lub ustawia wartość wskazującą, czy StreamWriter bufor zostanie opróżniony do strumienia bazowego po każdym wywołaniu Write(Char) .Gets or sets a value indicating whether the StreamWriter will flush its buffer to the underlying stream after every call to 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

Wartość właściwości

Boolean

true Aby wymusić StreamWriter opróżnienie buforu; w przeciwnym razie false .true to force StreamWriter to flush its buffer; otherwise, false.

Przykłady

Poniższy przykład pokazuje składnię użycia AutoFlush właściwości.The following example shows the syntax for using the AutoFlush property.

// 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

Uwagi

Opróżnianie strumienia nie spowoduje opróżnienia jego bazowego kodera, chyba że zostanie jawnie wywołana Flush lub Close .Flushing the stream will not flush its underlying encoder unless you explicitly call Flush or Close. Ustawienie AutoFlush true oznacza, że dane będą opróżniane z bufora do strumienia po każdej operacji zapisu, ale stan kodera nie zostanie opróżniony.Setting AutoFlush to true means that data will be flushed from the buffer to the stream after each write operation, but the encoder state will not be flushed. Dzięki temu koder może zachować swój stan (częściowe znaki), aby można było poprawnie zakodować następny blok znaków.This allows the encoder to keep its state (partial characters) so that it can encode the next block of characters correctly. Ten scenariusz ma wpływ na kodowanie UTF8 i UTF7, gdzie niektóre znaki mogą być kodowane tylko po odebraniu sąsiadujących znaków.This scenario affects UTF8 and UTF7 where certain characters can only be encoded after the encoder receives the adjacent character or characters.

Gdy AutoFlush jest ustawiona na false , StreamWriter program wykona ograniczoną liczbę buforów, zarówno wewnętrznie, jak i potencjalnie w koderze z przekazaną kodowaniem.When AutoFlush is set to false, StreamWriter will do a limited amount of buffering, both internally and potentially in the encoder from the encoding you passed in. Aby uzyskać lepszą wydajność, należy ustawić AutoFlush wartość false , przy założeniu, że zawsze jest wywoływana Close (lub co najmniej Flush ), gdy skończysz pisać przy użyciu StreamWriter .You can get better performance by setting AutoFlush to false, assuming that you always call Close (or at least Flush) when you're done writing with a StreamWriter.

Na przykład ustawienie AutoFlush to true podczas pisania na urządzeniu, na którym użytkownik oczekuje natychmiastowej opinii.For example, set AutoFlush to true when you are writing to a device where the user expects immediate feedback. Console.Out jest jednym z następujących przypadków: StreamWriter używany wewnętrznie do zapisu w celu Console opróżniania całego stanu wewnętrznego, z wyjątkiem stanu kodera po każdym wywołaniu StreamWriter.Write .Console.Out is one of these cases: The StreamWriter used internally for writing to Console flushes all its internal state except the encoder state after every call to StreamWriter.Write.

Aby uzyskać listę typowych zadań we/wy, zobacz typowe zadania we/wy.For a list of common I/O tasks, see Common I/O Tasks.

Dotyczy