Language

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 。

実装

例外

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

sequenceNumber は、このシーケンスでは無効です。

sequenceNumber は、このシーケンスの基本シーケンス番号と最後のシーケンス番号の間にありません。

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

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

プログラムの実行を続行するのに十分なメモリがありません。

注釈

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

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

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

適用対象