EventProcessorClient.ProcessEventAsync Ereignis

Definition

Führt die Aufgaben aus, die zum Verarbeiten eines Batches von Ereignissen für eine bestimmte Partition erforderlich sind, während diese aus dem Event Hubs-Dienst gelesen werden. Die Implementierung ist obligatorisch.

Sollte im Code für diese Methode eine Ausnahme auftreten, ermöglicht der Ereignisprozessor, den Stapel weiterzuverbreiten, ohne ihn in irgendeiner Weise zu behandeln. Auf den meisten Hosts verursacht dies einen Fehler für die Aufgabe, die für die Partitionsverarbeitung verantwortlich ist, und führt dazu, dass sie vom letzten Prüfpunkt aus neu gestartet wird. Auf einigen Hosts kann der Prozess abstürzen. Entwickler werden dringend empfohlen, alle Ausnahmeszenarien zu berücksichtigen und sich mit Try/Catch-Blöcken und anderen geeigneten Mitteln davor zu schützen.

Es wird nicht empfohlen, den Zustand des Prozessors direkt in diesem Handler zu verwalten. Die Anforderung, den Prozessor zu starten oder zu beenden, kann zu einem Deadlockszenario führen, insbesondere wenn die synchrone Form des Aufrufs verwendet wird.

public event Func<Azure.Messaging.EventHubs.Processor.ProcessEventArgs,System.Threading.Tasks.Task> ProcessEventAsync;
member this.ProcessEventAsync : Func<Azure.Messaging.EventHubs.Processor.ProcessEventArgs, System.Threading.Tasks.Task> 
Public Custom Event ProcessEventAsync As Func(Of ProcessEventArgs, Task) 

Ereignistyp

Ausnahmen

Wenn versucht wird, einen Handler zu entfernen, der nicht mit dem aktuellen registrierten Handler übereinstimmt.

Wenn versucht wird, einen Handler hinzuzufügen, wenn er gerade registriert ist.

Hinweise

Dieser Handler wird gleichzeitig aufgerufen, beschränkt auf einen Aufruf pro Partition. Der Prozessor wartet auf jeden Aufruf, um sicherzustellen, dass die Ereignisse von derselben Partition einzeln in der Reihenfolge verarbeitet werden, in der sie von der Partition gelesen wurden.

Für einen Aufruf dieses Handlers wird kein Zeitlimit festgelegt. der Prozessor wartet unbegrenzt, bis die Ausführung abgeschlossen ist, bevor ein weiteres Ereignis für die zugeordnete Partition gesendet wird. Es ist sicher, dass Implementierungen lang andauernde Vorgänge, Wiederholungen, Verzögerungen und Unzustellbare Schreibvorgänge ausführen können.

Gilt für:

Weitere Informationen