Freigeben über


FileRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Methode

Definition

Startet einen asynchronen Löschvorgang und verwendet Speicherplatz, der zuvor in der Sequenz reserviert wurde. Diese Methode kann nicht vererbt werden.

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

Parameter

sequenceNumber
SequenceNumber

Die Sequenznummer des letzten Datensatzes, der geschrieben werden muss. Wenn SequenceNumber ungültig ist, müssen alle Datensätze geschrieben werden.

callback
AsyncCallback

Ein optionaler asynchroner Rückruf, der nach Abschluss des Löschvorgangs aufgerufen wird.

state
Object

Ein vom Benutzer bereitgestelltes Objekt, das diese asynchrone Löschanforderung von anderen Anforderungen unterscheidet.

Gibt zurück

Ein IAsyncResult, das den asynchronen Löschvorgang darstellt, der möglicherweise noch aussteht.

Implementiert

Ausnahmen

Mindestens eines der Argumente ist ungültig.

sequenceNumber ist für diese Sequenz nicht gültig.

sequenceNumber befindet sich nicht zwischen der Basissequenznummer und der letzten Sequenznummer dieser Sequenz.

Beim Löschen der Daten ist ein E/A-Fehler aufgetreten.

Die Methode wurde aufgerufen, nachdem die Sequenz verworfen wurde.

Der Arbeitsspeicher reicht nicht aus, um die Ausführung des Programms fortzusetzen.

Hinweise

Sie sollten das von der aktuellen Methode ausgegebene IAsyncResult an die EndFlush-Methode weiterleiten, um sicherzustellen, dass der Löschvorgang abgeschlossen wird und die Ressourcen korrekt freigegeben werden. Wenn während eines asynchronen Löschvorgangs ein Fehler auftritt, wird erst dann eine Ausnahme ausgelöst, wenn die EndFlush-Methode mit dem von dieser Methode zurückgegebenen IAsyncResult aufgerufen wird.

Durch das Aufrufen dieser Methode wird sichergestellt, dass alle Datensätze, die der FileRecordSequence angefügt wurden, dauerhaft geschrieben werden.

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

Gilt für: