IRecordSequence.BeginAppend 方法

定義

在衍生類別中覆寫時,開始非同步的附加作業。

多載

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

在衍生類別中覆寫時,使用先前在順序中保留的空間,開始非同步的附加作業。

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

在衍生類別中覆寫時,使用先前在順序中保留的空間,開始非同步的附加作業。

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

在衍生類別中覆寫時,開始非同步的附加作業。

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

在衍生類別中覆寫時,使用先前在順序中保留的空間,開始非同步的附加作業。

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

在衍生類別中覆寫時,使用先前在順序中保留的空間,開始非同步的附加作業。

public:
 IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousUndoRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, System::IO::Log::ReservationCollection ^ reservations, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousUndoRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, System.IO.Log.ReservationCollection reservations, AsyncCallback callback, object state);
abstract member BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As IList(Of ArraySegment(Of Byte)), nextUndoRecord As SequenceNumber, previousUndoRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservations As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

參數

data
IList<ArraySegment<Byte>>

即將串連並附加成記錄之位元組陣列區段的清單。

nextUndoRecord
SequenceNumber

下一筆記錄的序號 (依照使用者指定的順序)。

previousUndoRecord
SequenceNumber

下一筆記錄的序號 (依照之前的順序)。

recordAppendOptions
RecordAppendOptions

RecordAppendOptions 的有效值,其中指定資料的寫入方式。

reservations
ReservationCollection

ReservationCollection,其中包含這筆記錄所應使用的保留區。

callback
AsyncCallback

選擇性的非同步回呼,在附加完成時呼叫。

state
Object

使用者所提供的物件,可區別此特定非同步附加要求與其他要求。

傳回

IAsyncResult,表示可能還在暫止中的非同步附加作業。

例外狀況

一或多個引數無效。

附加記錄時發生 I/O 錯誤。

記錄順序無法騰出足夠的可用空間來容納新的記錄。

已在處置序列之後呼叫此方法。

備註

您應該將這個方法所傳回的 IAsyncResult 傳遞給 EndAppend 方法,以確定附加作業已完成,而且可以適當地釋放資源。 如果在非同步附加期間發生錯誤,就要等到系統以這個方法傳回的 EndAppend 呼叫 IAsyncResult 方法時,才會擲回例外狀況。

包含在 data 參數中的資料將串連至單一位元組陣列中,以便附加成記錄。 不過,在讀取記錄時,並不會將資料分割回陣列區段。

附加的記錄將會使用 reservations 參數指定的保留區,以取用先前所保留的空間。 如果附加成功,則會使用可以保存資料的最小保留區域,而且該保留區域將會從集合移除。

此方法通常會在寫入記錄前完成。 若要確定已寫入某筆記錄,請使用 ForceFlush 參數指定 recordAppendOptions 旗標,或是呼叫 Flush 方法。

適用於

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

在衍生類別中覆寫時,使用先前在順序中保留的空間,開始非同步的附加作業。

public:
 IAsyncResult ^ BeginAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, System::IO::Log::ReservationCollection ^ reservations, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend (ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, System.IO.Log.ReservationCollection reservations, AsyncCallback callback, object state);
abstract member BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservations As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

參數

data
ArraySegment<Byte>

即將串連並附加成記錄之位元組陣列區段的清單。

nextUndoRecord
SequenceNumber

下一筆記錄的序號 (依照使用者指定的順序)。

previousRecord
SequenceNumber

下一筆記錄的序號 (依照之前的順序)。

recordAppendOptions
RecordAppendOptions

RecordAppendOptions 的有效值,其中指定資料的寫入方式。

reservations
ReservationCollection

ReservationCollection,其中包含這筆記錄所應使用的保留區。

callback
AsyncCallback

選擇性的非同步回呼,在附加完成時呼叫。

state
Object

使用者所提供的物件,可區別此特定非同步附加要求與其他要求。

傳回

IAsyncResult,表示可能還在暫止中的非同步附加作業。

例外狀況

一或多個引數無效。

附加記錄時發生 I/O 錯誤。

記錄順序無法騰出足夠的可用空間來容納新的記錄。

已在處置序列之後呼叫此方法。

備註

您應該將這個方法所傳回的 IAsyncResult 傳遞給 EndAppend 方法,以確定附加作業已完成,而且可以適當地釋放資源。 如果在非同步附加期間發生錯誤,就要等到系統以這個方法傳回的 EndAppend 呼叫 IAsyncResult 方法時,才會擲回例外狀況。

包含在 data 參數中的資料將串連至單一位元組陣列中,以便附加成記錄。 不過,在讀取記錄時,並不會將資料分割回陣列區段。

附加的記錄將會使用 reservations 參數指定的保留區,以取用先前所保留的空間。 如果附加成功,則會使用可以保存資料的最小保留區域,而且該保留區域將會從集合移除。

此方法通常會在寫入記錄前完成。 若要確定已寫入某筆記錄,請使用 ForceFlush 參數指定 recordAppendOptions 旗標,或是呼叫 Flush 方法。

適用於

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

在衍生類別中覆寫時,開始非同步的附加作業。

public:
 IAsyncResult ^ BeginAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend (ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, AsyncCallback callback, object state);
abstract member BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, callback As AsyncCallback, state As Object) As IAsyncResult

參數

data
ArraySegment<Byte>

即將串連並附加成記錄之位元組陣列區段的清單。

nextUndoRecord
SequenceNumber

下一筆記錄的序號 (依照使用者指定的順序)。

previousRecord
SequenceNumber

下一筆記錄的序號 (依照之前的順序)。

recordAppendOptions
RecordAppendOptions

RecordAppendOptions 的有效值,其中指定資料的寫入方式。

callback
AsyncCallback

選擇性的非同步回呼,在附加完成時呼叫。

state
Object

使用者所提供的物件,可區別此特定非同步附加要求與其他要求。

傳回

IAsyncResult,表示可能還在暫止中的非同步附加作業。

例外狀況

一或多個引數無效。

附加記錄時發生 I/O 錯誤。

記錄順序無法騰出足夠的可用空間來容納新的記錄。

已在處置序列之後呼叫此方法。

備註

您應該將這個方法所傳回的 IAsyncResult 傳遞給 EndAppend 方法,以確定附加作業已完成,而且可以適當地釋放資源。 如果在非同步附加期間發生錯誤,就要等到系統以這個方法傳回的 EndAppend 呼叫 IAsyncResult 方法時,才會擲回例外狀況。

包含在 data 參數中的資料將串連至單一位元組陣列中,以便附加成記錄。 不過,在讀取記錄時,並不會將資料分割回陣列區段。

此方法通常會在寫入記錄前完成。 若要確定已寫入某筆記錄,請使用 ForceFlush 參數指定 recordAppendOptions 旗標,或是呼叫 Flush 方法。

適用於

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

在衍生類別中覆寫時,使用先前在順序中保留的空間,開始非同步的附加作業。

public:
 IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, AsyncCallback callback, object state);
abstract member BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As IList(Of ArraySegment(Of Byte)), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, callback As AsyncCallback, state As Object) As IAsyncResult

參數

data
IList<ArraySegment<Byte>>

即將串連並附加成記錄之位元組陣列區段的清單。

nextUndoRecord
SequenceNumber

下一筆記錄的序號 (依照使用者指定的順序)。

previousRecord
SequenceNumber

下一筆記錄的序號 (依照之前的順序)。

recordAppendOptions
RecordAppendOptions

RecordAppendOptions 的有效值,其中指定資料的寫入方式。

callback
AsyncCallback

選擇性的非同步回呼,在附加完成時呼叫。

state
Object

使用者所提供的物件,可區別此特定非同步附加要求與其他要求。

傳回

IAsyncResult,表示可能還在暫止中的非同步附加作業。

例外狀況

一或多個引數無效。

附加記錄時發生 I/O 錯誤。

記錄順序無法騰出足夠的可用空間來容納新的記錄。

已在處置序列之後呼叫此方法。

備註

您應該將這個方法所傳回的 IAsyncResult 傳遞給 EndAppend 方法,以確定附加作業已完成,而且可以適當地釋放資源。 如果在非同步附加期間發生錯誤,就要等到系統以這個方法傳回的 EndAppend 呼叫 IAsyncResult 方法時,才會擲回例外狀況。

包含在 data 參數中的資料將串連至單一位元組陣列中,以便附加成記錄。 不過,在讀取記錄時,並不會將資料分割回陣列區段。

此方法通常會在寫入記錄前完成。 若要確定已寫入某筆記錄,請使用 ForceFlush 參數指定 recordAppendOptions 旗標,或是呼叫 Flush 方法。

適用於