TransformBlock<TInput,TOutput> クラス

定義

すべての受信データ要素の Func<T,TResult> の指定されたデリゲートを呼び出すデータ フローのブロックを提供します。

generic <typename TInput, typename TOutput>
public ref class TransformBlock sealed : System::Threading::Tasks::Dataflow::IPropagatorBlock<TInput, TOutput>, System::Threading::Tasks::Dataflow::IReceivableSourceBlock<TOutput>, System::Threading::Tasks::Dataflow::ISourceBlock<TOutput>, System::Threading::Tasks::Dataflow::ITargetBlock<TInput>
public sealed class TransformBlock<TInput,TOutput> : System.Threading.Tasks.Dataflow.IPropagatorBlock<TInput,TOutput>, System.Threading.Tasks.Dataflow.IReceivableSourceBlock<TOutput>, System.Threading.Tasks.Dataflow.ISourceBlock<TOutput>, System.Threading.Tasks.Dataflow.ITargetBlock<TInput>
type TransformBlock<'Input, 'Output> = class
    interface IPropagatorBlock<'Input, 'Output>
    interface ITargetBlock<'Input>
    interface IDataflowBlock
    interface ISourceBlock<'Output>
    interface IReceivableSourceBlock<'Output>
type TransformBlock<'Input, 'Output> = class
    interface IDataflowBlock
    interface IPropagatorBlock<'Input, 'Output>
    interface ISourceBlock<'Output>
    interface ITargetBlock<'Input>
    interface IReceivableSourceBlock<'Output>
Public NotInheritable Class TransformBlock(Of TInput, TOutput)
Implements IPropagatorBlock(Of TInput, TOutput), IReceivableSourceBlock(Of TOutput), ISourceBlock(Of TOutput), ITargetBlock(Of TInput)

型パラメーター

TInput

この TransformBlock<TInput,TOutput> によって受け取られ、操作されるデータの種類を指定します。

TOutput

この TransformBlock<TInput,TOutput> によって出力されるデータの種類を指定します。

継承
TransformBlock<TInput,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 を実行します。

コンストラクター

TransformBlock<TInput,TOutput>(Func<TInput,Task<TOutput>>)

指定した Func<T,TResult> で新しい TransformBlock<TInput,TOutput> を初期化します。

TransformBlock<TInput,TOutput>(Func<TInput,Task<TOutput>>, ExecutionDataflowBlockOptions)

指定した と ExecutionDataflowBlockOptionsを使用して、新しい TransformBlock<TInput,TOutput> を初期化しますFunc<T,TResult>

TransformBlock<TInput,TOutput>(Func<TInput,TOutput>)

指定した Func<T,TResult> で新しい TransformBlock<TInput,TOutput> を初期化します。

TransformBlock<TInput,TOutput>(Func<TInput,TOutput>, ExecutionDataflowBlockOptions)

指定した と ExecutionDataflowBlockOptionsを使用して、新しい TransformBlock<TInput,TOutput> を初期化しますFunc<T,TResult>

プロパティ

Completion

データ フロー ブロックの非同期操作と完了を表す Task を取得します。

InputCount

このブロックで処理するために待機している入力項目の数を取得します。

OutputCount

このブロックから取得できる出力項目の数を取得します。

メソッド

Complete()

これ以上メッセージを受け付けまたは生成せず、延期メッセージを使用しないことを IDataflowBlock に通知します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
LinkTo(ITargetBlock<TOutput>, DataflowLinkOptions)

ISourceBlock<TOutput> 指定した にリンクします ITargetBlock<TInput>

MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

この IDataflowBlock インスタンスの書式設定された名前を表す文字列を返します。

TryReceive(Predicate<TOutput>, TOutput)

使用可能な出力項目を IReceivableSourceBlock<TOutput> から同期的に受け取ろうとします。

TryReceiveAll(IList<TOutput>)

使用可能なすべての項目を IReceivableSourceBlock<TOutput> から同期的に受け取ろうとします。

明示的なインターフェイスの実装

IDataflowBlock.Fault(Exception)

IDataflowBlockFaulted 状態で完了するようにします。

ISourceBlock<TOutput>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean)

前にこの ITargetBlock<TInput> によって提供された DataflowMessageHeader を受け入れて使用するために、リンクされた ISourceBlock<TOutput> によって呼び出されます。

ISourceBlock<TOutput>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<TOutput>)

この ITargetBlock<TInput> によって前に予約された DataflowMessageHeader を解放するために、リンクされた ISourceBlock<TOutput> によって呼び出されます。

ISourceBlock<TOutput>.ReserveMessage(DataflowMessageHeader, ITargetBlock<TOutput>)

この ITargetBlock<TInput> によって前に提供された DataflowMessageHeader を予約するために、リンクされた ISourceBlock<TOutput> によって呼び出されます。

ITargetBlock<TInput>.OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean)

メッセージを ITargetBlock<TInput> に提供し、メッセージを使用または延期する機会をターゲットに与えます。

拡張メソッド

AsObservable<TOutput>(ISourceBlock<TOutput>)

IObservable<T> の新しい ISourceBlock<TOutput> 抽象化を作成します。

AsObserver<TInput>(ITargetBlock<TInput>)

IObserver<T> の新しい ITargetBlock<TInput> 抽象化を作成します。

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> を提供します。

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

ITargetBlock<TInput> に項目をポストします。

Receive<TOutput>(ISourceBlock<TOutput>)

指定されたソースから値を同期的に受信します。

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

同期的に指定したソースから値を受け取り、操作をキャンセルするトークンを提供します。

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

同期的に指定したソースから値を受信し、オプションのタイムアウト期間を確認します。

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

同期的に操作をキャンセルするトークンを提供し、オプションのタイムアウト間隔を確認する指定したソースから値を受け取ります。

ReceiveAllAsync<TOutput>(IReceivableSourceBlock<TOutput>, CancellationToken)

IAsyncEnumerable<T>ソースからすべてのデータを受信できるようにする を作成します。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

指定されたソースから値を非同期的に受信します。

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

非同期に指定したソースから値を受け取り、操作をキャンセルするトークンを提供します。

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

非同期に指定したソースから値を受信し、オプションのタイムアウト期間を確認します。

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

非同期に操作をキャンセルするトークンを提供し、オプションのタイムアウト間隔を確認する指定したソースから値を受け取ります。

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

ターゲット メッセージ ブロックにメッセージを非同期的に提供し、遅延を可能にします。

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

ターゲット メッセージ ブロックにメッセージを非同期的に提供し、遅延を可能にします。

TryReceive<TOutput>(IReceivableSourceBlock<TOutput>, TOutput)

ISourceBlock<TOutput> から使用可能な出力項目を同期的に受信します。

適用対象