StreamWriter.AutoFlush Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает или задает значение, определяющее, будет ли StreamWriter сбрасывать буфер в основной поток после каждого вызова 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
Значение свойства
Значение true
, чтобы заставить StreamWriter сбросить буфер; в противном случае — false
.
Примеры
В следующем примере показан синтаксис для использования AutoFlush
свойства .
// 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
Комментарии
Очистка потока не приведет к очистке его базового кодировщика, если вы явно не вызовете Flush или Close. Установка значения AutoFlushtrue
означает, что данные будут сброшены из буфера в поток после каждой операции записи, но состояние кодировщика не будет сброшено. Это позволяет кодировщику сохранять свое состояние (частичные символы), чтобы он смог правильно кодировать следующий блок символов. Этот сценарий влияет на UTF8 и UTF7, где определенные символы могут быть закодированы только после того, как кодировщик получит смежные символы или символы.
Если AutoFlush
для задано значение false
, StreamWriter
будет выполнять ограниченную буферизацию, как внутри, так и, возможно, в кодировщике из переданной кодировки. Вы можете повысить производительность, задав значение AutoFlush
false
, при условии, что вы всегда вызываете Close
(или по крайней мере Flush
) после завершения записи с помощью StreamWriter
.
Например, задайте для значение AutoFlush
true
при записи на устройство, где пользователь ожидает немедленной обратной связи. Console.Out
— это один из следующих случаев: StreamWriter
используется для записи Console
во все свои внутренние состояния, кроме состояния кодировщика, после каждого вызова StreamWriter.Write.
Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.