IAsyncBatchObserver<T> 接口

定义

此接口通用化 IAsyncObserver 接口,以允许对批项进行生产和使用。

请注意,此接口由项使用者实现,并且由项目生成者) 使用的 (调用。 这意味着流的使用者终结点实现此接口。

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)

类型参数

T

观察者使用的对象的类型。

这是逆变类型参数。 即,可以使用指定的类型,也可以使用派生程度较低的任何类型。 有关协变和逆变的详细信息,请参阅泛型中的协变和逆变
派生
实现

方法

OnCompletedAsync()

通知使用者流已完成。

当使用者完成处理流关闭时,应完成从此方法返回的任务。

OnErrorAsync(Exception)

通知使用者流出错。

当使用者完成处理流关闭时,应完成从此方法返回的任务。

OnNextAsync(IList<SequentialItem<T>>)

将下一批项目传递给使用者。

当使用者已足够处理项目以满足任何行为保证时,应完成此方法返回的任务。

当使用者是) 流的 (生成者终结点时,当流实现已接受对项目负责并保证满足其交付保证时,任务将完成。 例如,基于持久队列的流会在项持久保存后完成任务。 一次传递时提供最大努力的流将返回已完成的任务。

当生成者是) 流的 (使用者终结点时,当任务接受项目责任时,应由使用者代码完成。 具体而言,如果流提供程序保证至少传递一次,则在使用者返回的任务完成之前,不应将项目视为传递。

OnNextAsync(T, StreamSequenceToken)

将下一项传递给使用者。

当使用者已足够处理项目处理以满足任何行为保证时,应完成此方法返回的任务。

当使用者是流) 的 (生成方终结点时,当流实现已接受对项目负责并保证满足其交付保证时,任务将完成。 例如,基于持久队列的流会在项持久保存后完成任务。 一次传递时提供最大努力的流将返回已完成的任务。

当生成者是) 流的 (使用者终结点时,当任务接受项目责任时,应由使用者代码完成。 特别是,如果流提供程序保证至少传递一次,则在使用者返回的任务完成之前,不应将该项目视为已交付。

(继承自 IAsyncObserver<T>)
OnNextBatchAsync(IEnumerable<T>, StreamSequenceToken)

将下一批项目传递给使用者。

当使用者已足够处理批处理中的所有项以满足任何行为保证时,应完成此方法返回的任务。

也就是说,返回的任务的语义与 OnNextAsync批处理中所有项的语义相同。

适用于