Поделиться через


FileRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Метод

Определение

Начинает асинхронную операцию записи на диск, используя пространство, которое было ранее зарезервировано в последовательности. Этот метод не может быть унаследован.

public:
 virtual IAsyncResult ^ BeginFlush(System::IO::Log::SequenceNumber sequenceNumber, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginFlush (System.IO.Log.SequenceNumber sequenceNumber, AsyncCallback callback, object state);
abstract member BeginFlush : System.IO.Log.SequenceNumber * AsyncCallback * obj -> IAsyncResult
override this.BeginFlush : System.IO.Log.SequenceNumber * AsyncCallback * obj -> IAsyncResult
Public Function BeginFlush (sequenceNumber As SequenceNumber, callback As AsyncCallback, state As Object) As IAsyncResult

Параметры

sequenceNumber
SequenceNumber

Порядковый номер последней записи, которую требуется записать. Если номер SequenceNumber недопустим, необходимо зарегистрировать все записи.

callback
AsyncCallback

Необязательный асинхронный обратный вызов по завершении операции записи на диск.

state
Object

Предоставляемый пользователем объект, являющийся отличительным признаком данного конкретного запроса на запись на диск от других запросов.

Возвращаемое значение

Объект IAsyncResult, представляющий асинхронную операцию очистки, которая может все еще ожидать выполнения.

Реализации

Исключения

Один или несколько аргументов являются недопустимыми.

Значение параметра sequenceNumber недопустимо для этой последовательности.

Значение параметра sequenceNumber не лежит между основным и последним порядковыми номерами этой последовательности.

При очистке данных произошла ошибка ввода-вывода.

Метод был вызван после удаления последовательности.

Недостаточно памяти, чтобы продолжить выполнение программы.

Комментарии

Необходимо передать объект IAsyncResult, возвращаемый текущим методом, методу EndFlush, чтобы обеспечить завершение очистки и правильное освобождение ресурсов. Если ошибка возникает при выполнении асинхронной очистки, исключение не будет создано до тех пор, пока не будет вызван метод EndFlush с объектом IAsyncResult, возвращаемым данным методом.

Вызов этого метода гарантирует, что внесены все записи, добавленные в последовательность FileRecordSequence.

Если последовательность записей была удалена, или если передается неверный аргумент, исключения создаются немедленно, в пределах данной операции. Ошибки, возникшие при выполнении запроса асинхронной очистки, например ошибка диска в процессе запроса ввода-вывода, приводят к созданию исключений при вызове метода EndFlush.

Применяется к