TransformBlock<TInput,TOutput> Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje blok toku dat, který vyvolá zadaný Func<T,TResult> delegát pro každý přijatý datový prvek.
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)
Parametry typu
- TInput
Určuje typ přijatých a provozovaných dat .TransformBlock<TInput,TOutput>
- TOutput
Určuje typ výstupu dat tímto TransformBlock<TInput,TOutput>způsobem .
- Dědičnost
-
TransformBlock<TInput,TOutput>
- Implementuje
Poznámky
Note
Knihovna toku dat TPL (jmenný prostor System.Threading.Tasks.Dataflow) není distribuována s .NET. Pokud chcete nainstalovat obor názvů System.Threading.Tasks.Dataflow v sadě Visual Studio, otevřete projekt, zvolte v nabídce Projekt možnost Spravovat balíčky NuGet a balíček System.Threading.Tasks.Dataflow vyhledejte online. Případně ji můžete nainstalovat pomocí rozhraní příkazového řádku .NET Core, spusťte dotnet add package System.Threading.Tasks.Dataflow.
Konstruktory
| Name | Description |
|---|---|
| TransformBlock<TInput,TOutput>(Func<TInput,Task<TOutput>>, ExecutionDataflowBlockOptions) |
Inicializuje nový TransformBlock<TInput,TOutput> se zadaným Func<T,TResult> a ExecutionDataflowBlockOptions. |
| TransformBlock<TInput,TOutput>(Func<TInput,Task<TOutput>>) |
Inicializuje nový TransformBlock<TInput,TOutput> pomocí zadaného Func<T,TResult>. |
| TransformBlock<TInput,TOutput>(Func<TInput,TOutput>, ExecutionDataflowBlockOptions) |
Inicializuje nový TransformBlock<TInput,TOutput> se zadaným Func<T,TResult> a ExecutionDataflowBlockOptions. |
| TransformBlock<TInput,TOutput>(Func<TInput,TOutput>) |
Inicializuje nový TransformBlock<TInput,TOutput> pomocí zadaného Func<T,TResult>. |
Vlastnosti
| Name | Description |
|---|---|
| Completion |
Task Získá, který představuje asynchronní operace a dokončení bloku toku dat. |
| InputCount |
Získá počet vstupních položek čekajících na zpracování tímto blokem. |
| OutputCount |
Získá počet výstupních položek, které lze přijímat z tohoto bloku. |
Metody
| Name | Description |
|---|---|
| Complete() |
Signály pro IDataflowBlock to, že by neměl přijímat ani vytvářet žádné další zprávy, ani využívat žádné odložené zprávy. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| LinkTo(ITargetBlock<TOutput>, DataflowLinkOptions) |
Odkazuje na ISourceBlock<TOutput> zadanou ITargetBlock<TInput> . |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje formátovaný název této IDataflowBlock instance. |
| TryReceive(Predicate<TOutput>, TOutput) |
Pokusí se synchronně přijmout dostupnou výstupní položku z objektu IReceivableSourceBlock<TOutput>. |
| TryReceiveAll(IList<TOutput>) |
Pokusí se synchronně přijmout všechny dostupné položky z objektu IReceivableSourceBlock<TOutput>. |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| IDataflowBlock.Fault(Exception) |
Způsobí, že se IDataflowBlock dokončí ve Faulted stavu. |
| ISourceBlock<TOutput>.ConsumeMessage(DataflowMessageHeader, ITargetBlock<TOutput>, Boolean) |
Volal odkaz ITargetBlock<TInput> , aby přijímal a spotřebovával DataflowMessageHeader dříve nabízené tímto ISourceBlock<TOutput>. |
| ISourceBlock<TOutput>.ReleaseReservation(DataflowMessageHeader, ITargetBlock<TOutput>) |
Volal by odkaz ITargetBlock<TInput> na vydání dříve rezervované DataflowMessageHeader tímto ISourceBlock<TOutput>. |
| ISourceBlock<TOutput>.ReserveMessage(DataflowMessageHeader, ITargetBlock<TOutput>) |
Volal by odkaz ITargetBlock<TInput> na rezervaci dříve nabízené DataflowMessageHeader tímto ISourceBlock<TOutput>. |
| ITargetBlock<TInput>.OfferMessage(DataflowMessageHeader, TInput, ISourceBlock<TInput>, Boolean) |
Nabízí zprávu ITargetBlock<TInput>, která cíli dává příležitost využívat nebo odložit zprávu. |