Sdílet prostřednictvím


DataflowBlock.SendAsync Metoda

Definice

Přetížení

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

Asynchronně nabídne zprávu cílovému bloku zpráv, což umožňuje odložení.

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

Asynchronně nabídne zprávu cílovému bloku zpráv, což umožňuje odložení.

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

Zdroj:
DataflowBlock.cs
Zdroj:
DataflowBlock.cs
Zdroj:
DataflowBlock.cs

Asynchronně nabídne zprávu cílovému bloku zpráv, což umožňuje odložení.

public:
generic <typename TInput>
[System::Runtime::CompilerServices::Extension]
 static System::Threading::Tasks::Task<bool> ^ SendAsync(System::Threading::Tasks::Dataflow::ITargetBlock<TInput> ^ target, TInput item, System::Threading::CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<bool> SendAsync<TInput> (this System.Threading.Tasks.Dataflow.ITargetBlock<TInput> target, TInput item, System.Threading.CancellationToken cancellationToken);
static member SendAsync : System.Threading.Tasks.Dataflow.ITargetBlock<'Input> * 'Input * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
<Extension()>
Public Function SendAsync(Of TInput) (target As ITargetBlock(Of TInput), item As TInput, cancellationToken As CancellationToken) As Task(Of Boolean)

Parametry typu

TInput

Určuje typ dat, která se mají publikovat do cíle.

Parametry

target
ITargetBlock<TInput>

Cíl, do kterého se mají data publikovat.

item
TInput

Položka nabízená cíli.

cancellationToken
CancellationToken

Token zrušení, pomocí kterého chcete požádat o zrušení operace odeslání.

Návraty

A Task<TResult> , která představuje asynchronní odesílání. Pokud cíl přijme a spotřebuje nabízený prvek během volání SendAsync, po návratu z volání se výsledný výsledek Task<TResult> dokončí a jeho Result vlastnost vrátí hodnotu true. Pokud cíl odmítne nabízený prvek během volání, po návratu z volání bude výsledný výsledek Task<TResult> dokončen a jeho Result vlastnost vrátí false. Pokud cíl odloží nabízený prvek, element se uloží do vyrovnávací paměti, dokud ho cíl nespotřebuje nebo uvolní. V tomto okamžiku bude úloha dokončena s tím Result , zda byla zpráva spotřebována. Pokud se cíl nikdy nepokusí zprávu využít nebo uvolnit, vrácená úloha se nikdy nedokončuje.

Pokud je zrušení požadováno dříve, než cíl úspěšně spotřebuje odeslaná data, vrácená úloha se dokončí ve stavu Zrušeno a data již nebudou pro cíl k dispozici.

Výjimky

Is target null (Nothing v jazyce Visual Basic).

Token zrušení byl zrušen. Tato výjimka se uloží do vrácené úlohy.

Platí pro

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

Zdroj:
DataflowBlock.cs
Zdroj:
DataflowBlock.cs
Zdroj:
DataflowBlock.cs

Asynchronně nabídne zprávu cílovému bloku zpráv, což umožňuje odložení.

public:
generic <typename TInput>
[System::Runtime::CompilerServices::Extension]
 static System::Threading::Tasks::Task<bool> ^ SendAsync(System::Threading::Tasks::Dataflow::ITargetBlock<TInput> ^ target, TInput item);
public static System.Threading.Tasks.Task<bool> SendAsync<TInput> (this System.Threading.Tasks.Dataflow.ITargetBlock<TInput> target, TInput item);
static member SendAsync : System.Threading.Tasks.Dataflow.ITargetBlock<'Input> * 'Input -> System.Threading.Tasks.Task<bool>
<Extension()>
Public Function SendAsync(Of TInput) (target As ITargetBlock(Of TInput), item As TInput) As Task(Of Boolean)

Parametry typu

TInput

Určuje typ dat, která se mají publikovat do cíle.

Parametry

target
ITargetBlock<TInput>

Cíl, do kterého se mají data publikovat.

item
TInput

Položka nabízená cíli.

Návraty

A Task<TResult> , která představuje asynchronní odesílání. Pokud cíl přijme a využívá nabízený prvek během volání SendAsync<TInput>(ITargetBlock<TInput>, TInput), po návratu z volání se výsledný Task<TResult> prvek dokončí a jeho Result vlastnost vrátí true. Pokud cíl odmítne nabízený prvek během volání, po návratu z volání bude výsledný výsledek Task<TResult> dokončen a jeho Result vlastnost vrátí false. Pokud cíl odloží nabízený prvek, element se uloží do vyrovnávací paměti, dokud cíl nespotřebuje nebo uvolní. V tomto okamžiku bude úkol dokončen a bude Result ukazovat, zda byla zpráva spotřebována. Pokud se cíl nikdy nepokusí zprávu využít nebo uvolnit, vrácená úloha se nikdy nedokončuje.

Výjimky

Hodnota target je null.

Platí pro