ISourceBlock<TOutput> 接口

定义

表示作为数据源的数据流块。

generic <typename TOutput>
public interface class ISourceBlock : System::Threading::Tasks::Dataflow::IDataflowBlock
public interface ISourceBlock<out TOutput> : System.Threading.Tasks.Dataflow.IDataflowBlock
type ISourceBlock<'Output> = interface
    interface IDataflowBlock
Public Interface ISourceBlock(Of Out TOutput)
Implements IDataflowBlock

类型参数

TOutput

指定由 . ISourceBlock<TOutput>. 提供的数据的类型。

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

注解

备注

TPL 数据流库(System.Threading.Tasks.Dataflow 命名空间)不随 .NET 一起分发。 若要在 Visual Studio 中安装 System.Threading.Tasks.Dataflow 命名空间,请打开项目,选择“项目”菜单中的“管理 NuGet 包”,再在线搜索 System.Threading.Tasks.Dataflow 包。 或者,若要使用 .NET Core CLI 进行安装,请运行 dotnet add package System.Threading.Tasks.Dataflow

属性

Completion

获取 Task,其表示数据流块的操作和完成。

(继承自 IDataflowBlock)

方法

Complete()

通知 IDataflowBlock,告知其不应该生成任何更多的消息也不应使用任何更多的延迟消息。

(继承自 IDataflowBlock)
ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean)

由链接的 ITargetBlock<TInput> 调用,以接受并使用以前由此 DataflowMessageHeader 提供的 ISourceBlock<TOutput>

Fault(Exception)

导致 IDataflowBlockFaulted 状态下完成。

(继承自 IDataflowBlock)
LinkTo(ITargetBlock<TOutput>, DataflowLinkOptions)

ISourceBlock<TOutput> 链接到指定的 ITargetBlock<TInput>

ReleaseReservation(DataflowMessageHeader, ITargetBlock<TOutput>)

由链接的 ITargetBlock<TInput> 调用,以发布由此 DataflowMessageHeader 发布的以前已保留的 ISourceBlock<TOutput>

ReserveMessage(DataflowMessageHeader, ITargetBlock<TOutput>)

由链接的 ITargetBlock<TInput> 调用,以保留以前由此 DataflowMessageHeader 提供的 ISourceBlock<TOutput>

扩展方法

AsObservable<TOutput>(ISourceBlock<TOutput>)

IObservable<T> 创建新的 ISourceBlock<TOutput> 抽象。

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>)

ISourceBlock<TOutput> 链接到指定的 ITargetBlock<TInput>

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, Predicate<TOutput>)

用指定的筛选器将 ISourceBlock<TOutput> 链接到指定的 ITargetBlock<TInput>

LinkTo<TOutput>(ISourceBlock<TOutput>, ITargetBlock<TOutput>, DataflowLinkOptions, Predicate<TOutput>)

用指定的筛选器将 ISourceBlock<TOutput> 链接到指定的 ITargetBlock<TInput>

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

提供可异步监视可利用的输出的源的 Task<TResult>

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)

提供 Task<TResult>,用于以异步方式监视可用输出的源。

Receive<TOutput>(ISourceBlock<TOutput>)

同步接收来自指定源的值。

Receive<TOutput>(ISourceBlock<TOutput>, CancellationToken)

同步从指定的数据源中接收值并提供标记来取消操作。

Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan)

同步从指定的数据源中接收值,观察可选的超时期限。

Receive<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)

同步从指定的数据源中接收值,提供标记以取消操作并观察可选的超时间隔。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

异步接收来自指定源的值。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)

异步从指定的数据源中接收值并提供标记来取消操作。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan)

异步从指定的数据源中接收值,观察可选的超时期限。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)

异步从指定的数据源中接收值,提供标记以取消操作并观察可选的超时间隔。

适用于