本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

DataflowBlock.Choose<T1, T2, T3> 方法 (ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions)

 

監視三個資料流程來源,叫用提供的處理常式的任何來源讓資料可使用第一次。

命名空間:   System.Threading.Tasks.Dataflow
組件:  System.Threading.Tasks.Dataflow (於 System.Threading.Tasks.Dataflow.dll)

public static Task<int> Choose<T1, T2, T3>(
	ISourceBlock<T1> source1,
	Action<T1> action1,
	ISourceBlock<T2> source2,
	Action<T2> action2,
	ISourceBlock<T3> source3,
	Action<T3> action3,
	DataflowBlockOptions dataflowBlockOptions
)

參數

source1
Type: System.Threading.Tasks.Dataflow.ISourceBlock<T1>

第一個來源。

action1
Type: System.Action<T1>

要從第一個來源的資料上執行的處理常式。

source2
Type: System.Threading.Tasks.Dataflow.ISourceBlock<T2>

第二個來源。

action2
Type: System.Action<T2>

要從第二個來源的資料上執行的處理常式。

source3
Type: System.Threading.Tasks.Dataflow.ISourceBlock<T3>

第三個來源。

action3
Type: System.Action<T3>

在第三個來源的資料上執行處理常式。

dataflowBlockOptions
Type: System.Threading.Tasks.Dataflow.DataflowBlockOptions

用來設定這項選擇選項。

傳回值

Type: System.Threading.Tasks.Task<Int32>

A Task<TResult> ,代表非同步的選擇。 如果所有來源都完成都後,再選擇完成,或是 CancellationToken 隨附 dataflowBlockOptions 取消選擇完成之前產生的工作將會被取消。 當其中一個來源含有可用資料,並成功地將它傳播的選擇時,產生的工作將會完成時處理常式完成;如果此處理常式擲回例外狀況,便會在結束工作 Faulted 狀態,並將包含未處理的例外狀況。 否則工作會以結尾其 Result 設為 0 為基礎的來源索引。

這個方法只會永遠不會多個使用資料來源,其中的項目。 如果取消要求在收到項目之後,會忽略取消要求,並允許相關的處理常式會執行。

類型參數

T1

指定包含第一個來源中的資料類型。

T2

指定包含第二個來源的資料類型。

T3

指定包含第三個來源中的資料類型。

Exception Condition
ArgumentNullException

source1null

-或-

action1null

-或-

source2null

-或-

action2null

-或-

source3null

-或-

action3null

-或-

dataflowBlockOptionsnull

回到頁首
顯示: