LogRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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 diese 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
sequenceNumber
ist für diese Sequenz nicht gültig.
sequenceNumber
befindet sich nicht zwischen der Basissequenznummer und der letzten Sequenznummer dieser Sequenz.
Die Anforderung konnte aufgrund einer unerwarteten E/A-Ausnahme nicht ausgeführt werden.
Das angegebene Protokoll verfügt nicht über Wertebereiche. Ein oder mehrere Wertebereiche müssen erstellt werden, bevor eine Datensatzsequenz verwendet werden kann.
Der Vorgang kann nicht ausgeführt werden, da die Datensatzsequenz mit schreibgeschütztem Zugriff geöffnet wurde.
Die Methode wurde aufgerufen, nachdem die Sequenz verworfen wurde.
Der Arbeitsspeicher reicht nicht aus, um die Ausführung des Programms fortzusetzen.
Die Datensatzsequenz ist voll.
Der Zugriff auf die angegebene Protokollsequenz wird vom Betriebssystem verweigert.
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 LogRecordSequence 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.