Bagikan melalui


DataflowBlock.SendAsync Metode

Definisi

Overload

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

Secara asinkron menawarkan pesan ke blok pesan target, memungkinkan penundaan.

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

Secara asinkron menawarkan pesan ke blok pesan target, memungkinkan penundaan.

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

Sumber:
DataflowBlock.cs
Sumber:
DataflowBlock.cs
Sumber:
DataflowBlock.cs

Secara asinkron menawarkan pesan ke blok pesan target, memungkinkan penundaan.

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)

Jenis parameter

TInput

Menentukan jenis data yang akan diposting ke target.

Parameter

target
ITargetBlock<TInput>

Target untuk memposting data.

item
TInput

Item yang ditawarkan kepada target.

cancellationToken
CancellationToken

Token pembatalan untuk meminta pembatalan operasi pengiriman.

Mengembalikan

Task<TResult> yang mewakili pengiriman asinkron. Jika target menerima dan menggunakan elemen yang ditawarkan selama panggilan ke SendAsync, setelah kembali dari panggilan yang dihasilkan Task<TResult> akan selesai dan propertinya Result akan mengembalikan true. Jika target menolak elemen yang ditawarkan selama panggilan, setelah kembali dari panggilan, hasilnya Task<TResult> akan selesai dan propertinya Result akan mengembalikan false. Jika target menunda elemen yang ditawarkan, elemen akan di-buffer hingga target mengonsumsi atau melepaskannya, di mana Tugas akan selesai, dengan Result menunjukkan apakah pesan digunakan. Jika target tidak pernah mencoba mengonsumsi atau merilis pesan, tugas yang dikembalikan tidak akan pernah selesai.

Jika pembatalan diminta sebelum target berhasil menggunakan data yang dikirim, tugas yang dikembalikan akan selesai dalam status Dibatalkan dan data tidak akan lagi tersedia untuk target.

Pengecualian

target adalah null (Tidak ada di Visual Basic).

Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.

Berlaku untuk

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

Sumber:
DataflowBlock.cs
Sumber:
DataflowBlock.cs
Sumber:
DataflowBlock.cs

Secara asinkron menawarkan pesan ke blok pesan target, memungkinkan penundaan.

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)

Jenis parameter

TInput

Menentukan jenis data yang akan diposting ke target.

Parameter

target
ITargetBlock<TInput>

Target untuk memposting data.

item
TInput

Item yang ditawarkan kepada target.

Mengembalikan

Task<TResult> yang mewakili pengiriman asinkron. Jika target menerima dan menggunakan elemen yang ditawarkan selama panggilan ke SendAsync<TInput>(ITargetBlock<TInput>, TInput), setelah kembali dari panggilan yang dihasilkan Task<TResult> akan selesai dan propertinya Result akan mengembalikan true. Jika target menolak elemen yang ditawarkan selama panggilan, setelah kembali dari panggilan yang dihasilkan Task<TResult> akan selesai dan propertinya Result akan mengembalikan false. Jika target menunda elemen yang ditawarkan, elemen akan di-buffer hingga target mengonsumsi atau melepaskannya, pada titik mana tugas akan selesai, dengan Result menunjukkan apakah pesan dikonsumsi. Jika target tidak pernah mencoba mengonsumsi atau merilis pesan, tugas yang dikembalikan tidak akan pernah selesai.

Pengecualian

target adalah null.

Berlaku untuk