DataflowBlock.ReceiveAsync 方法

定義

多載

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

以非同步方式接收來自指定之來源的值。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)

非同步接收指定之來源的值,並提供語彙基元取消作業。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan)

非同步接收指定之來源的值,觀察選擇性逾時期限。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)

非同步接收指定之來源的值,提供語彙基元取消作業並觀察選擇性逾時間隔。

ReceiveAsync<TOutput>(ISourceBlock<TOutput>)

Source:
DataflowBlock.cs
Source:
DataflowBlock.cs
Source:
DataflowBlock.cs

以非同步方式接收來自指定之來源的值。

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>

要從其中接收值的來源。

傳回

Task<TOutput>

代表非同步接收作業的工作。 當成功從來源接收項目值時,傳回的工作已完成,而且其 Result 會傳回接收該值。 若因為來源為空且已完成而無法擷取項目值,會在傳回的工作中擲回 InvalidOperationException 例外狀況。

例外狀況

sourcenull

適用於

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, CancellationToken)

Source:
DataflowBlock.cs
Source:
DataflowBlock.cs
Source:
DataflowBlock.cs

非同步接收指定之來源的值,並提供語彙基元取消作業。

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

要用來取消接收作業的語彙基元。

傳回

Task<TOutput>

代表非同步接收作業的工作。 當成功從來源接收值時,傳回的工作已完成,而且其 Result 會傳回該值。 如果因為要求取消而無法擷取值,則取消傳回的工作。 若因為來源為空且已完成而無法擷取值,會在傳回的工作中擲回 InvalidOperationException 例外狀況。

例外狀況

sourcenull

解除標記已取消。 此例外狀況會儲存在傳回的工作中。

適用於

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan)

Source:
DataflowBlock.cs
Source:
DataflowBlock.cs
Source:
DataflowBlock.cs

非同步接收指定之來源的值,觀察選擇性逾時期限。

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 表示無限期等候的時間間隔。

傳回

Task<TOutput>

代表非同步接收作業的工作。 當成功從來源接收值時,傳回的工作已完成,而且其 Result 會傳回該值。 如果因為逾時到期而無法擷取值,則取消傳回的工作。 若因為來源為空且已完成而無法擷取值,會在傳回的工作中擲回 InvalidOperationException 例外狀況。

例外狀況

sourcenull

timeout 是一個不等於 -1 的負數,這表示無限的逾時時間。

-或-

timeout 大於 Int32.MaxValue

適用於

ReceiveAsync<TOutput>(ISourceBlock<TOutput>, TimeSpan, CancellationToken)

Source:
DataflowBlock.cs
Source:
DataflowBlock.cs
Source:
DataflowBlock.cs

非同步接收指定之來源的值,提供語彙基元取消作業並觀察選擇性逾時間隔。

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

可能用來取消接收作業的語彙基元。

傳回

Task<TOutput>

代表非同步接收作業的工作。 當成功從來源接收值時,傳回的工作已完成,而且其 Result 會傳回該值。 如果因為逾時到期或要求取消而無法擷取值,則取消傳回的工作。 如果因為來源是空的和已完成,而無法擷值,則會在傳回的工作中擲回 InvalidOperationException 例外狀況。

例外狀況

sourcenull

timeout 是一個不等於 -1 的負數,這表示無限的逾時時間。

-或-

timeout 大於 Int32.MaxValue

解除標記已取消。 此例外狀況會儲存在傳回的工作中。

適用於