Freigeben über


IRecordSequence.BeginWriteRestartArea Methode

Definition

Löst beim Überschreiben in einer abgeleiteten Klasse einen asynchronen Neustartbereich-Schreibvorgang aus.

Überlädt

BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object)

Leitet beim Überschreiben in einer abgeleiteten Klasse einen asynchronen Neustartbereich-Schreibvorgang ein, wobei der zuvor in der Sequenz reservierte Speicherplatz verwendet wird.

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

Leitet beim Überschreiben in einer abgeleiteten Klasse einen asynchronen Neustartbereich-Schreibvorgang ein, wobei der zuvor in der Sequenz reservierte Speicherplatz verwendet wird.

BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object)

Leitet beim Überschreiben in einer abgeleiteten Klasse einen asynchronen Neustartbereich-Schreibvorgang ein, wobei der zuvor in der Sequenz reservierte Speicherplatz verwendet wird.

public:
 IAsyncResult ^ BeginWriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea (ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation, AsyncCallback callback, object state);
abstract member BeginWriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginWriteRestartArea (data As ArraySegment(Of Byte), newBaseSequenceNumber As SequenceNumber, reservation As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

Parameter

data
ArraySegment<Byte>

Eine Liste von Bytearraysegmenten, die verkettet und als Datensatz angefügt werden.

newBaseSequenceNumber
SequenceNumber

Die neue Basissequenznummer. Die angegebene Sequenznummer muss größer oder gleich der aktuellen Basissequenznummer sein.

reservation
ReservationCollection

Eine ReservationCollection, die die Reservierung enthält, die für diesen Neustartbereich verwendet werden sollte.

callback
AsyncCallback

Ein optionaler asynchroner Rückruf, der nach Abschluss des Neustartbereich-Schreibvorgangs aufgerufen wird.

state
Object

Ein vom Benutzer bereitgestelltes Objekt, das diese asynchrone Neustartbereichschreibanforderung von anderen Anforderungen unterscheidet.

Gibt zurück

Ein IAsyncResult, das den asynchronen Neustartbereich-Schreibvorgang darstellt, der möglicherweise noch aussteht.

Hinweise

Sie sollten das von der dieser Methode zurückgegebene IAsyncResult an die EndWriteRestartArea-Methode weiterleiten, um sicherzustellen, dass der Neustartbereich-Schreibvorgang abgeschlossen ist und die Ressourcen korrekt freigegeben werden können. Wenn während eines asynchronen Neustartbereich-Schreibvorgangs ein Fehler aufgetreten ist, wird erst dann eine Ausnahme ausgelöst, wenn die EndWriteRestartArea-Methode mit dem von dieser Methode zurückgegebenen IAsyncResult aufgerufen wird.

Die im data-Parameter enthaltenen Daten werden zum Anfügen als Datensatz in einem Array mit einem Byte verkettet. Die Daten können jedoch nicht wieder in Arraysegmente aufgeteilt werden, nachdem der Datensatz gelesen wurde.

Wenn die Operation erfolgreich abgeschlossen wird, wurde die Basissequenznummer aktualisiert. Auf alle Protokolldatensätze mit Sequenznummern, die kleiner als die neue Basissequenznummer sind, kann nicht zugegriffen werden.

Wenn eine ReservationCollection angegeben wird, nimmt der geschriebene Neustartbereich, der zuvor mithilfe einer in der Auflistung enthaltenen Reservierung reserviert wurde, Speicherplatz ein. Wenn diese Methode erfolgreich ist, wird die kleinstmögliche Reservierung verwendet, die die Daten aufnehmen kann. Diese Reservierung wird dann aus der Auflistung entfernt.

Wenn eine Datensatzsequenz verworfen wurde oder wenn Sie ein ungültiges Argument weitergeben, werden unmittelbar während dieses Vorgangs Ausnahmen ausgelöst. Während einer asynchronen Anfügeanforderung auftretende Fehler, z. B. Fehler auf dem Datenträger während der E/A-Anforderung, lösen beim Aufruf der EndWriteRestartArea-Methode Ausnahmen aus.

Gilt für:

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

Leitet beim Überschreiben in einer abgeleiteten Klasse einen asynchronen Neustartbereich-Schreibvorgang ein, wobei der zuvor in der Sequenz reservierte Speicherplatz verwendet wird.

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

Parameter

data
IList<ArraySegment<Byte>>

Eine Liste von Bytearraysegmenten, die verkettet und als Datensatz angefügt werden.

newBaseSequenceNumber
SequenceNumber

Die neue Basissequenznummer. Die angegebene Sequenznummer muss größer oder gleich der aktuellen Basissequenznummer sein.

reservation
ReservationCollection

Eine ReservationCollection, die die Reservierung enthält, die für diesen Neustartbereich verwendet werden sollte.

callback
AsyncCallback

Ein optionaler asynchroner Rückruf, der nach Abschluss des Neustartbereich-Schreibvorgangs aufgerufen wird.

state
Object

Ein vom Benutzer bereitgestelltes Objekt, das diese asynchrone Neustartbereichschreibanforderung von anderen Anforderungen unterscheidet.

Gibt zurück

Ein IAsyncResult, das den asynchronen Neustartbereich-Schreibvorgang darstellt, der möglicherweise noch aussteht.

Ausnahmen

Mindestens eines der Argumente ist ungültig.

Beim Schreiben des Neustartbereichs ist ein E/A-Fehler aufgetreten.

Die Datensatzsequenz konnte nicht genügend freien Speicherplatz bereitstellen, um den neuen Datensatz zu enthalten.

Die Methode wurde aufgerufen, nachdem die Sequenz verworfen wurde.

Hinweise

Sie sollten das von dieser Methode zurückgegebene IAsyncResult an die EndWriteRestartArea-Methode weiterleiten, um sicherzustellen, dass der Neustartbereich-Schreibvorgang abgeschlossen ist und die Ressourcen korrekt freigegeben werden können. Wenn während eines asynchronen Neustartbereich-Schreibvorgangs ein Fehler aufgetreten ist, wird erst dann eine Ausnahme ausgelöst, wenn die EndWriteRestartArea-Methode mit dem von dieser Methode zurückgegebenen IAsyncResult aufgerufen wird.

Die im data-Parameter enthaltenen Daten werden zum Anfügen als Datensatz in einem Array mit einem Byte verkettet. Die Daten können jedoch nicht wieder in Arraysegmente aufgeteilt werden, nachdem der Datensatz gelesen wurde.

Wenn die Operation erfolgreich abgeschlossen wird, wurde die Basissequenznummer aktualisiert. Auf alle Protokolldatensätze mit Sequenznummern, die kleiner als die neue Basissequenznummer sind, kann nicht zugegriffen werden.

Wenn eine ReservationCollection angegeben wird, nimmt der geschriebene Neustartbereich, der zuvor mithilfe einer in der Auflistung enthaltenen Reservierung reserviert wurde, Speicherplatz ein. Wenn diese Methode erfolgreich ist, wird die kleinstmögliche Reservierung verwendet, die die Daten aufnehmen kann. Diese Reservierung wird dann aus der Auflistung entfernt.

Wenn eine Datensatzsequenz verworfen wurde oder wenn Sie ein ungültiges Argument weitergeben, werden unmittelbar während dieses Vorgangs Ausnahmen ausgelöst. Während einer asynchronen Anfügeanforderung auftretende Fehler, z. B. Fehler auf dem Datenträger während der E/A-Anforderung, lösen beim Aufruf der EndWriteRestartArea-Methode Ausnahmen aus.

Gilt für: