DataflowBlock.ReceiveAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>) |
非同步地從指定來源接收一個值。 |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken) |
非同步接收指定來源的值,並提供一個令牌以取消操作。 |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan) |
非同步接收指定來源的值,並觀察可選的逾時期。 |
| ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken) |
非同步接收指定來源的值,提供取消操作的標記,並觀察可選的逾時間隔。 |
ReceiveAsync<TOutput>(ISourceBlock<TOutput>)
非同步地從指定來源接收一個值。
public:
generic <typename TOutput>
[System::Runtime::CompilerServices::Extension]
static System::Threading::Tasks::Task<TOutput> ^ ReceiveAsync(System::Threading::Tasks::Dataflow::ISourceBlock<TOutput> ^ source);
public static System.Threading.Tasks.Task<TOutput> ReceiveAsync<TOutput>(this System.Threading.Tasks.Dataflow.ISourceBlock<TOutput> source);
static member ReceiveAsync : System.Threading.Tasks.Dataflow.ISourceBlock<'Output> -> System.Threading.Tasks.Task<'Output>
<Extension()>
Public Function ReceiveAsync(Of TOutput) (source As ISourceBlock(Of TOutput)) As Task(Of TOutput)
類型參數
- TOutput
資料來源中包含的資料類型。
參數
- source
- ISourceBlock<TOutput>
獲取價值的來源。
傳回
一個代表非同步接收操作的任務。 當從來源成功接收到項目值時,回傳任務完成,任務 Result 回傳該值。 若某項目值因來源空且已完成 InvalidOperationException 而無法取得,則會在回傳任務中拋出例外。
例外狀況
source 是 null。
適用於
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)
非同步接收指定來源的值,並提供一個令牌以取消操作。
public:
generic <typename TOutput>
[System::Runtime::CompilerServices::Extension]
static System::Threading::Tasks::Task<TOutput> ^ ReceiveAsync(System::Threading::Tasks::Dataflow::ISourceBlock<TOutput> ^ source, System::Threading::CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<TOutput> ReceiveAsync<TOutput>(this System.Threading.Tasks.Dataflow.ISourceBlock<TOutput> source, System.Threading.CancellationToken cancellationToken);
static member ReceiveAsync : System.Threading.Tasks.Dataflow.ISourceBlock<'Output> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Output>
<Extension()>
Public Function ReceiveAsync(Of TOutput) (source As ISourceBlock(Of TOutput), cancellationToken As CancellationToken) As Task(Of TOutput)
類型參數
- TOutput
指定來源中包含的資料類型。
參數
- source
- ISourceBlock<TOutput>
獲取價值的來源。
- cancellationToken
- CancellationToken
用來取消接收操作的權杖。
傳回
一個代表非同步接收操作的任務。 當成功從來源接收到一個值時,回傳的任務即完成,並回 Result 傳該值。 若因請求取消而無法取得某個值,則回傳任務即被取消。 若因來源為空且已完成 InvalidOperationException ,無法取得該值,則會在回傳任務中拋出例外。
例外狀況
source 是 null。
取消令牌也被取消了。 此例外會儲存在回傳的任務中。
適用於
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan)
非同步接收指定來源的值,並觀察可選的逾時期。
public:
generic <typename TOutput>
[System::Runtime::CompilerServices::Extension]
static System::Threading::Tasks::Task<TOutput> ^ ReceiveAsync(System::Threading::Tasks::Dataflow::ISourceBlock<TOutput> ^ source, TimeSpan timeout);
public static System.Threading.Tasks.Task<TOutput> ReceiveAsync<TOutput>(this System.Threading.Tasks.Dataflow.ISourceBlock<TOutput> source, TimeSpan timeout);
static member ReceiveAsync : System.Threading.Tasks.Dataflow.ISourceBlock<'Output> * TimeSpan -> System.Threading.Tasks.Task<'Output>
<Extension()>
Public Function ReceiveAsync(Of TOutput) (source As ISourceBlock(Of TOutput), timeout As TimeSpan) As Task(Of TOutput)
類型參數
- TOutput
資料來源中包含的資料類型。
參數
- source
- ISourceBlock<TOutput>
獲取價值的來源。
- timeout
- TimeSpan
等待同步操作完成的最大時間間隔(以毫秒計)或代表無限等待的 -1 毫秒間隔。
傳回
一個代表非同步接收操作的任務。 當成功從來源接收到一個值時,回傳的任務即完成,並回 Result 傳該值。 若因逾時期過而無法取回某值,則回傳任務將被取消。 若因來源為空且已完成 InvalidOperationException ,無法取得該值,則會在回傳任務中拋出例外。
例外狀況
source 是 null。
適用於
ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)
非同步接收指定來源的值,提供取消操作的標記,並觀察可選的逾時間隔。
public:
generic <typename TOutput>
[System::Runtime::CompilerServices::Extension]
static System::Threading::Tasks::Task<TOutput> ^ ReceiveAsync(System::Threading::Tasks::Dataflow::ISourceBlock<TOutput> ^ source, TimeSpan timeout, System::Threading::CancellationToken cancellationToken);
public static System.Threading.Tasks.Task<TOutput> ReceiveAsync<TOutput>(this System.Threading.Tasks.Dataflow.ISourceBlock<TOutput> source, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
static member ReceiveAsync : System.Threading.Tasks.Dataflow.ISourceBlock<'Output> * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Output>
<Extension()>
Public Function ReceiveAsync(Of TOutput) (source As ISourceBlock(Of TOutput), timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of TOutput)
類型參數
- TOutput
資料來源中包含的資料類型。
參數
- source
- ISourceBlock<TOutput>
獲取價值的來源。
- timeout
- TimeSpan
等待同步操作完成的最大時間間隔(以毫秒計)或代表無限等待的 -1 毫秒間隔。
- cancellationToken
- CancellationToken
該標記可用於取消接收操作。
傳回
一個代表非同步接收操作的任務。 當成功從來源接收到一個值時,回傳的任務即完成,並回 Result 傳該值。 若因逾時過期或請求取消而無法取回某值,則回傳任務將被取消。 如果因為來源為空且已完成而無法取得該值,則 InvalidOperationException 會在回傳任務中拋出例外。
例外狀況
source 是 null。
取消令牌也被取消了。 此例外會儲存在回傳的任務中。