语言

IPropagatorBlock<TInput,TOutput> 接口

定义

表示数据流块,该块既是数据的目标,也是数据源。

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

类型参数

TInput

指定接受 IPropagatorBlock<TInput,TOutput>的数据类型。

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

指定由 . IPropagatorBlock<TInput,TOutput>. 提供的数据的类型。

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

属性

名称 说明
Completion

获取一个 Task 表示数据流块的异步操作和完成。

(继承自 IDataflowBlock)

方法

名称 说明
Complete()

信号 IDataflowBlock 表明,它不应接受或生成更多消息,也不应再使用任何推迟的消息。

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

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

(继承自 ISourceBlock<TOutput>)
Fault(Exception)

使状态 IDataflowBlock 完成 Faulted 。

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

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

(继承自 ISourceBlock<TOutput>)
OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)

向消息提供一条消息 ITargetBlock<TInput>,使目标有机会使用或推迟消息。

(继承自 ITargetBlock<TInput>)
ReleaseReservation(DataflowMessageHeader, ITargetBlock<TOutput>)

由链接 ITargetBlock<TInput> 调用,以释放以前 DataflowMessageHeader 保留的此 ISourceBlock<TOutput>版本。

(继承自 ISourceBlock<TOutput>)
ReserveMessage(DataflowMessageHeader, ITargetBlock<TOutput>)

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

(继承自 ISourceBlock<TOutput>)

扩展方法

名称 说明
AsObservable<TOutput>(ISourceBlock<TOutput>)

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

AsObserver<TInput>(ITargetBlock<TInput>)

创建一个新的IObserver<T>抽象。ITargetBlock<TInput>

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

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

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

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

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

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

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

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

OutputAvailableAsync<TOutput>(ISourceBlock<TOutput>)

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

Post<TInput>(ITargetBlock<TInput>, TInput)

将项目发布到 .ITargetBlock<TInput>

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

同步接收来自指定源的值,并提供用于取消操作的令牌。

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

从指定源同步接收值,提供一个令牌来取消操作并观察可选的超时间隔。

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

同步接收来自指定源的值,观察可选的超时期限。

Receive<TOutput>(ISourceBlock<TOutput>)

从指定的源同步接收值。

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

从指定源异步接收值,并提供用于取消操作的令牌。

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

从指定源异步接收值,提供一个令牌来取消操作并观察可选的超时间隔。

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

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

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

从指定源异步接收值。

SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken)

以异步方式向目标消息块提供消息,从而允许推迟。

SendAsync<TInput>(ITargetBlock<TInput>, TInput)

以异步方式向目标消息块提供消息,从而允许推迟。

适用于