DataflowBlock.SendAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken) |
非同步地向目標訊息區塊提供訊息,允許延後。 |
| SendAsync<TInput>(ITargetBlock<TInput>, TInput) |
非同步地向目標訊息區塊提供訊息,允許延後。 |
SendAsync<TInput>(ITargetBlock<TInput>, TInput, CancellationToken)
非同步地向目標訊息區塊提供訊息,允許延後。
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)
類型參數
- TInput
指定要發佈給目標的資料類型。
參數
- target
- ITargetBlock<TInput>
數據發布的目標。
- item
- TInput
提供給目標的物品。
- cancellationToken
- CancellationToken
這是用來請求取消傳送操作的取消權杖。
傳回
Task<TResult> A 代表非同步傳送。 如果目標在呼叫 SendAsync 時接受並消耗所提供的元素,呼叫回傳後,結果 Task<TResult> 將完成,其 Result 屬性會回傳為 true。 如果目標在呼叫中拒絕所提供元素,呼叫回來後,結果 Task<TResult> 將被完成,其 Result 屬性將回傳為假。 若目標延遲提供元素,該元素會被緩衝,直到目標使用或釋放該元素,此時任務完成,並 Result 顯示訊息是否已被使用。 如果目標從未嘗試使用或釋放訊息,回傳的任務將永遠無法完成。
若在目標成功使用傳送資料前就提出取消請求,回傳任務將以取消狀態完成,資料將不再對目標可用。
例外狀況
target 為零(Visual Basic 中無任何)。
取消令牌也被取消了。 此例外會儲存在回傳的任務中。
適用於
SendAsync<TInput>(ITargetBlock<TInput>, TInput)
非同步地向目標訊息區塊提供訊息,允許延後。
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)
類型參數
- TInput
指定要發佈給目標的資料類型。
參數
- target
- ITargetBlock<TInput>
數據發布的目標。
- item
- TInput
提供給目標的物品。
傳回
Task<TResult> A 代表非同步傳送。 若目標在呼叫 SendAsync<TInput>(ITargetBlock<TInput>, TInput)時接受並消耗所提供元素,返回後 Task<TResult> 結果將完成,其 Result 性質將返回 true。 若目標在呼叫中拒絕所提供元素,呼叫回來後,結果 Task<TResult> 將完成,其 Result 屬性將返回 false。 若目標延遲提供元素,該元素會被緩衝,直到目標使用或釋放該元素,此時任務完成,並 Result 顯示訊息是否已被使用。 如果目標從未嘗試使用或釋放訊息,回傳的任務將永遠無法完成。
例外狀況
target 是 null。