語言

IRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) 方法

定義

當在衍生類別中覆寫時,會開始非同步沖洗操作,使用序列中先前保留的空間。

public:
 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
Public Function BeginFlush (sequenceNumber As SequenceNumber, callback As AsyncCallback, state As Object) As IAsyncResult

參數

sequenceNumber
SequenceNumber

必須寫入的最新紀錄的序號。 若此無 SequenceNumber 效,則所有紀錄必須寫入。

callback
AsyncCallback

一個可選的非同步回撥,當清空完成時呼叫。

state
Object

一個使用者提供的物件,用來區分此特定非同步清洗請求與其他請求。

傳回

一個 IAsyncResult 代表非同步沖洗操作,該操作可能仍在等待中。

例外狀況

一或多個引數無效。

在清除資料時發生了 I/O 錯誤。

該方法是在序列被處理後才被呼叫的。

備註

你應該將 IAsyncResult 當前方法的回傳資料傳遞給 EndFlush 該方法,以確保洗車完成並適當釋放資源。 若在非同步沖洗期間發生錯誤,除非該方法呼叫該方法並返回異常EndFlush,否則IAsyncResult不會拋出例外。

呼叫此方法可確保所有附加於 的 IRecordSequence 紀錄都能被持久寫入。

如果記錄序列已被處理,或你傳遞了無效參數,則在此操作中會立即拋出例外。 例如,在非同步清機請求期間發生錯誤,例如在 I/O 請求中磁碟故障,當呼叫該 EndFlush 方法時,會拋出異常。

適用於