次の方法で共有


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。まだ保留状態の場合もあります。

例外

1 つ以上の引数が無効です。

データのフラッシュ中に I/O エラーが発生しました。

シーケンスが破棄された後にメソッドが呼び出されました。

注釈

現在のメソッドから返された IAsyncResultEndFlush メソッドに渡すことにより、フラッシュが完了し、リソースが適切に解放されたことを確認する必要があります。 非同期フラッシュ中にエラーが発生した場合、このメソッドから返される EndFlush を使用して IAsyncResult メソッドを呼び出すまで、例外はスローされません。

このメソッドを呼び出すことにより、IRecordSequence に追加されたすべてのレコードが永続的に書き込まれたことを確認します。

レコード シーケンスが破棄されている場合、または無効な引数を渡した場合、この操作内で例外が直ちにスローされます。 I/O 要求時にディスク障害が発生した場合など、非同期フラッシュ要求中にエラーが発生した場合、EndFlush メソッドが呼び出されたときに例外がスローされます。

適用対象