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> Abstraction。

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)

非同步接收指定之來源的值,提供語彙基元取消作業並觀察選擇性逾時間隔。

適用於