Partager via


IAsyncBatchObserver<T> Interface

Définition

Cette interface généralise l’interface IAsyncObserver pour permettre la production et la consommation de lots d’éléments.

Notez que cette interface est implémentée par les consommateurs d’éléments et appelée (utilisée) par les producteurs d’éléments. Cela signifie que le point de terminaison consommateur d’un flux implémente cette interface.

public interface IAsyncBatchObserver<in T> : Orleans.Streams.IAsyncObserver<in T>
public interface IAsyncBatchObserver<T>
type IAsyncBatchObserver<'T> = interface
    interface IAsyncObserver<'T>
type IAsyncBatchObserver<'T> = interface
Public Interface IAsyncBatchObserver(Of In T)
Implements IAsyncObserver(Of In T)
Public Interface IAsyncBatchObserver(Of T)

Paramètres de type

T

Type d’objet consommé par l’observateur.

Ce paramètre de type est contravariant. Cela signifie que vous pouvez utiliser le type spécifié ou tout type moins dérivé. Pour plus d’informations sur la covariance et la contravariance, consultez Covariance et contravariance dans les génériques.
Dérivé
Implémente

Méthodes

OnCompletedAsync()

Avertit le consommateur que le flux a été terminé.

La tâche retournée par cette méthode doit être terminée lorsque le consommateur a terminé de traiter la fermeture du flux.

OnErrorAsync(Exception)

Avertit le consommateur que le flux a rencontré une erreur.

La tâche retournée par cette méthode doit être terminée lorsque le consommateur a terminé de traiter la fermeture du flux.

OnNextAsync(IList<SequentialItem<T>>)

Transmet le lot d’éléments suivant au consommateur.

La tâche retournée par cette méthode doit être effectuée lorsque le traitement des éléments a été suffisamment traité par le consommateur pour respecter les garanties comportementales.

Lorsque le consommateur est le (point de terminaison du producteur) d’un flux, la tâche est terminée lorsque l’implémentation du flux a accepté la responsabilité des éléments et est assuré de respecter ses garanties de livraison. Par exemple, un flux basé sur une file d’attente durable terminerait la tâche lorsque les éléments ont été enregistrés durablement. Un flux qui fournit le meilleur effort au maximum une fois la livraison retournerait une tâche déjà terminée.

Lorsque le producteur est le (point de terminaison du consommateur) d’un flux, la tâche doit être terminée par le code du consommateur lorsqu’il a accepté la responsabilité des éléments. En particulier, si le fournisseur de flux garantit au moins une remise, les éléments ne doivent pas être considérés comme remis tant que la tâche retournée par le consommateur n’est pas terminée.

OnNextAsync(T, StreamSequenceToken)

Passe l’élément suivant au consommateur.

La tâche retournée par cette méthode doit être terminée lorsque le traitement de l’élément a été suffisamment traité par le consommateur pour respecter les garanties comportementales.

Lorsque le consommateur est le (point de terminaison du producteur) d’un flux, la tâche est terminée lorsque l’implémentation du flux a accepté la responsabilité de l’élément et est assuré de respecter ses garanties de livraison. Par exemple, un flux basé sur une file d’attente durable terminerait la tâche lorsque l’élément a été enregistré durablement. Un flux qui fournit le meilleur effort au maximum une fois la livraison retournerait une tâche déjà terminée.

Lorsque le producteur est le (point de terminaison du consommateur) d’un flux, la tâche doit être terminée par le code du consommateur lorsqu’il a accepté la responsabilité de l’élément. En particulier, si le fournisseur de flux garantit au moins une remise, l’élément ne doit pas être considéré comme remis tant que la tâche retournée par le consommateur n’est pas terminée.

(Hérité de IAsyncObserver<T>)
OnNextBatchAsync(IEnumerable<T>, StreamSequenceToken)

Transmet le lot d’éléments suivant au consommateur.

La tâche retournée par cette méthode doit être terminée lorsque tous les éléments du lot ont été suffisamment traités par le consommateur pour respecter les garanties comportementales.

Autrement dit, la sémantique de la tâche retournée est la même que pour OnNextAsync, étendue pour tous les éléments du lot.

S’applique à