Compartir a través de


IAsyncBatchObserver<T> Interfaz

Definición

Esta interfaz generaliza la interfaz IAsyncObserver para permitir la producción y el consumo de lotes de elementos.

Tenga en cuenta que los consumidores de elementos implementan esta interfaz e invocan (usadas) por los productores de elementos. Esto significa que el punto de conexión de consumidor de una secuencia implementa esta interfaz.

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)

Parámetros de tipo

T

Tipo de objeto consumido por el observador.

Este parámetro de tipo es contravariante, es decir, puede usar el tipo que haya especificado o cualquier tipo menos derivado. Si desea obtener más información sobre la covarianza y la contravarianza, consulte Covarianza y contravarianza en genéricos.
Derivado
Implementaciones

Métodos

OnCompletedAsync()

Notifica al consumidor que se completó la secuencia.

La tarea devuelta desde este método debe completarse cuando el consumidor haya terminado de procesar el cierre de la secuencia.

OnErrorAsync(Exception)

Notifica al consumidor que la secuencia tenía un error.

La tarea devuelta desde este método debe completarse cuando el consumidor haya terminado de procesar el cierre de la secuencia.

OnNextAsync(IList<SequentialItem<T>>)

Pasa el siguiente lote de elementos al consumidor.

La tarea devuelta desde este método debe completarse cuando el consumidor haya procesado lo suficiente el procesamiento de los elementos para cumplir las garantías de comportamiento.

Cuando el consumidor es el (punto de conexión de productor de) una secuencia, la tarea se completa cuando la implementación de la secuencia ha aceptado la responsabilidad de los elementos y está garantizada de cumplir sus garantías de entrega. Por ejemplo, una secuencia basada en una cola duradera completaría la tarea cuando los elementos se hayan guardado de forma duradera. Una secuencia que proporciona el máximo esfuerzo una vez que la entrega devuelve una tarea que ya está completa.

Cuando el productor es el (punto de conexión de consumidor de) una secuencia, el código de consumidor debe completar la tarea cuando haya aceptado la responsabilidad de los elementos. En concreto, si el proveedor de flujos garantiza la entrega al menos una vez, los elementos no se deben considerar entregados hasta que se haya completado la tarea devuelta por el consumidor.

OnNextAsync(T, StreamSequenceToken)

Pasa el siguiente elemento al consumidor.

La tarea devuelta desde este método debe completarse cuando el consumidor haya procesado lo suficiente el procesamiento del elemento para cumplir cualquier garantía de comportamiento.

Cuando el consumidor es el (punto de conexión de productor de) una secuencia, la tarea se completa cuando la implementación de la secuencia ha aceptado la responsabilidad del elemento y está garantizada de cumplir sus garantías de entrega. Por ejemplo, una secuencia basada en una cola duradera completaría la tarea cuando el elemento se haya guardado de forma duradera. Una secuencia que proporciona el máximo esfuerzo una vez que la entrega devuelve una tarea que ya está completa.

Cuando el productor es el (punto de conexión de consumidor de) una secuencia, el código de consumidor debe completar la tarea cuando haya aceptado la responsabilidad del elemento. En concreto, si el proveedor de flujos garantiza la entrega al menos una vez, el artículo no se debe considerar entregado hasta que se haya completado la tarea devuelta por el consumidor.

(Heredado de IAsyncObserver<T>)
OnNextBatchAsync(IEnumerable<T>, StreamSequenceToken)

Pasa el siguiente lote de elementos al consumidor.

La tarea devuelta desde este método debe completarse cuando el consumidor haya procesado suficientemente todos los elementos del lote para cumplir las garantías de comportamiento.

Es decir, la semántica de la tarea devuelta es la misma que para OnNextAsync, extendida para todos los elementos del lote.

Se aplica a