Aracılığıyla paylaş


DataflowBlock.Choose Yöntem

Tanım

Aşırı Yüklemeler

Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)

Sağlanan işleyiciyi ilk olarak kullanılabilir hale getiren kaynak için sağlanan işleyiciyi çağırarak üç veri akışı kaynağını izler.

Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions)

Sağlanan işleyiciyi ilk olarak kullanılabilir hale getiren kaynak için sağlanan işleyiciyi çağırarak üç veri akışı kaynağını izler.

Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>)

İki veri akışı kaynağını izler ve sağlanan işleyiciyi hangi kaynak için önce kullanılabilir hale getirirse çağırarak izler.

Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions)

İki veri akışı kaynağını izler ve sağlanan işleyiciyi hangi kaynak için önce kullanılabilir hale getirirse çağırarak izler.

Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)

Sağlanan işleyiciyi ilk olarak kullanılabilir hale getiren kaynak için sağlanan işleyiciyi çağırarak üç veri akışı kaynağını izler.

public:
generic <typename T1, typename T2, typename T3>
 static System::Threading::Tasks::Task<int> ^ Choose(System::Threading::Tasks::Dataflow::ISourceBlock<T1> ^ source1, Action<T1> ^ action1, System::Threading::Tasks::Dataflow::ISourceBlock<T2> ^ source2, Action<T2> ^ action2, System::Threading::Tasks::Dataflow::ISourceBlock<T3> ^ source3, Action<T3> ^ action3);
public static System.Threading.Tasks.Task<int> Choose<T1,T2,T3> (System.Threading.Tasks.Dataflow.ISourceBlock<T1> source1, Action<T1> action1, System.Threading.Tasks.Dataflow.ISourceBlock<T2> source2, Action<T2> action2, System.Threading.Tasks.Dataflow.ISourceBlock<T3> source3, Action<T3> action3);
static member Choose : System.Threading.Tasks.Dataflow.ISourceBlock<'T1> * Action<'T1> * System.Threading.Tasks.Dataflow.ISourceBlock<'T2> * Action<'T2> * System.Threading.Tasks.Dataflow.ISourceBlock<'T3> * Action<'T3> -> System.Threading.Tasks.Task<int>
Public Function Choose(Of T1, T2, T3) (source1 As ISourceBlock(Of T1), action1 As Action(Of T1), source2 As ISourceBlock(Of T2), action2 As Action(Of T2), source3 As ISourceBlock(Of T3), action3 As Action(Of T3)) As Task(Of Integer)

Tür Parametreleri

T1

İlk kaynakta bulunan veri türünü belirtir.

T2

İkinci kaynakta bulunan veri türünü belirtir.

T3

Üçüncü kaynakta bulunan veri türünü belirtir.

Parametreler

source1
ISourceBlock<T1>

İlk kaynak.

action1
Action<T1>

İlk kaynaktan veriler üzerinde yürütülecek işleyici.

source2
ISourceBlock<T2>

İkinci kaynak.

action2
Action<T2>

İkinci kaynaktan veriler üzerinde yürütülecek işleyici.

source3
ISourceBlock<T3>

Üçüncü kaynak.

action3
Action<T3>

Üçüncü kaynaktan gelen veriler üzerinde yürütülecek işleyici.

Döndürülenler

Task<Int32>

Task<TResult> Zaman uyumsuz seçimi temsil eden bir. Seçim tamamlanmadan önce tüm kaynaklar tamamlanırsa, sonuçta elde edilen görev iptal edilir. Kaynaklardan birinde kullanılabilir veriler olduğunda ve bunu seçime başarıyla yaydığında, işleyici tamamlandığında sonuçta elde edilen görev tamamlanır; İşleyici bir özel durum oluşturursa, görev durumunda sona erer Faulted ve işlenmeyen özel durumu içerir. Aksi takdirde, görev kaynağın 0 tabanlı dizinine ayarlanmış olarak sona erer Result .

Bu yöntem yalnızca veri kaynaklarından birinden bir öğe tüketir, hiçbir zaman birden fazla olmaz.

Özel durumlar

şeklindedir source1 null.

-veya- şeklindedir action1 null.

-veya- şeklindedir source2 null.

-veya- şeklindedir action2 null.

-veya- şeklindedir source3 null.

-veya- şeklindedir action3 null.

Şunlara uygulanır

Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions)

Sağlanan işleyiciyi ilk olarak kullanılabilir hale getiren kaynak için sağlanan işleyiciyi çağırarak üç veri akışı kaynağını izler.

public:
generic <typename T1, typename T2, typename T3>
 static System::Threading::Tasks::Task<int> ^ Choose(System::Threading::Tasks::Dataflow::ISourceBlock<T1> ^ source1, Action<T1> ^ action1, System::Threading::Tasks::Dataflow::ISourceBlock<T2> ^ source2, Action<T2> ^ action2, System::Threading::Tasks::Dataflow::ISourceBlock<T3> ^ source3, Action<T3> ^ action3, System::Threading::Tasks::Dataflow::DataflowBlockOptions ^ dataflowBlockOptions);
public static System.Threading.Tasks.Task<int> Choose<T1,T2,T3> (System.Threading.Tasks.Dataflow.ISourceBlock<T1> source1, Action<T1> action1, System.Threading.Tasks.Dataflow.ISourceBlock<T2> source2, Action<T2> action2, System.Threading.Tasks.Dataflow.ISourceBlock<T3> source3, Action<T3> action3, System.Threading.Tasks.Dataflow.DataflowBlockOptions dataflowBlockOptions);
static member Choose : System.Threading.Tasks.Dataflow.ISourceBlock<'T1> * Action<'T1> * System.Threading.Tasks.Dataflow.ISourceBlock<'T2> * Action<'T2> * System.Threading.Tasks.Dataflow.ISourceBlock<'T3> * Action<'T3> * System.Threading.Tasks.Dataflow.DataflowBlockOptions -> System.Threading.Tasks.Task<int>
Public Function Choose(Of T1, T2, T3) (source1 As ISourceBlock(Of T1), action1 As Action(Of T1), source2 As ISourceBlock(Of T2), action2 As Action(Of T2), source3 As ISourceBlock(Of T3), action3 As Action(Of T3), dataflowBlockOptions As DataflowBlockOptions) As Task(Of Integer)

Tür Parametreleri

T1

İlk kaynakta bulunan veri türünü belirtir.

T2

İkinci kaynakta bulunan veri türünü belirtir.

T3

Üçüncü kaynakta bulunan veri türünü belirtir.

Parametreler

source1
ISourceBlock<T1>

İlk kaynak.

action1
Action<T1>

İlk kaynaktan veriler üzerinde yürütülecek işleyici.

source2
ISourceBlock<T2>

İkinci kaynak.

action2
Action<T2>

İkinci kaynaktan veriler üzerinde yürütülecek işleyici.

source3
ISourceBlock<T3>

Üçüncü kaynak.

action3
Action<T3>

Üçüncü kaynaktan gelen veriler üzerinde yürütülecek işleyici.

dataflowBlockOptions
DataflowBlockOptions

Bu seçimin yapılandırıldığı seçenekler.

Döndürülenler

Task<Int32>

Task<TResult> Zaman uyumsuz seçimi temsil eden bir. Tüm kaynaklar seçim tamamlanmadan önce tamamlanırsa veya bir parçası dataflowBlockOptions olarak sağlanan seçenek tamamlanmadan önce iptal edilirseCancellationToken, sonuçta elde edilen görev iptal edilir. Kaynaklardan birinde kullanılabilir veriler olduğunda ve bunu seçime başarıyla yaydığında, işleyici tamamlandığında sonuçta elde edilen görev tamamlanır; İşleyici bir özel durum oluşturursa, görev durumunda sona erer Faulted ve işlenmeyen özel durumu içerir. Aksi takdirde, görev kaynağın 0 tabanlı dizinine ayarlanmış olarak sona erer Result .

Bu yöntem yalnızca veri kaynaklarından birinden bir öğe tüketir, hiçbir zaman birden fazla olmaz. Bir öğe alındıktan sonra iptal istenirse iptal isteği yoksayılır ve ilgili işleyicinin yürütülmesine izin verilir.

Özel durumlar

şeklindedir source1 null.

-veya- şeklindedir action1 null.

-veya- şeklindedir source2 null.

-veya- şeklindedir action2 null.

-veya- şeklindedir source3 null.

-veya- şeklindedir action3 null.

-veya- şeklindedir dataflowBlockOptions null.

Şunlara uygulanır

Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>)

İki veri akışı kaynağını izler ve sağlanan işleyiciyi hangi kaynak için önce kullanılabilir hale getirirse çağırarak izler.

public:
generic <typename T1, typename T2>
 static System::Threading::Tasks::Task<int> ^ Choose(System::Threading::Tasks::Dataflow::ISourceBlock<T1> ^ source1, Action<T1> ^ action1, System::Threading::Tasks::Dataflow::ISourceBlock<T2> ^ source2, Action<T2> ^ action2);
public static System.Threading.Tasks.Task<int> Choose<T1,T2> (System.Threading.Tasks.Dataflow.ISourceBlock<T1> source1, Action<T1> action1, System.Threading.Tasks.Dataflow.ISourceBlock<T2> source2, Action<T2> action2);
static member Choose : System.Threading.Tasks.Dataflow.ISourceBlock<'T1> * Action<'T1> * System.Threading.Tasks.Dataflow.ISourceBlock<'T2> * Action<'T2> -> System.Threading.Tasks.Task<int>
Public Function Choose(Of T1, T2) (source1 As ISourceBlock(Of T1), action1 As Action(Of T1), source2 As ISourceBlock(Of T2), action2 As Action(Of T2)) As Task(Of Integer)

Tür Parametreleri

T1

İlk kaynakta bulunan veri türünü belirtir.

T2

İkinci kaynakta bulunan veri türünü belirtir.

Parametreler

source1
ISourceBlock<T1>

İlk kaynak.

action1
Action<T1>

İlk kaynaktan veriler üzerinde yürütülecek işleyici.

source2
ISourceBlock<T2>

İkinci kaynak.

action2
Action<T2>

İkinci kaynaktan veriler üzerinde yürütülecek işleyici.

Döndürülenler

Task<Int32>

Task<TResult> Zaman uyumsuz seçimi temsil eden bir. Her iki kaynak da seçim tamamlanmadan önce tamamlanırsa, sonuçta elde edilen görev iptal edilir. Kaynaklardan birinde kullanılabilir veriler olduğunda ve bunu seçime başarıyla yaydığında, işleyici tamamlandığında sonuçta elde edilen görev tamamlanır; İşleyici bir özel durum oluşturursa, görev durumunda sona erer Faulted ve işlenmeyen özel durumu içerir. Aksi takdirde, görev sırasıyla birinci veya ikinci kaynağı temsil etmek için 0 veya 1 olarak ayarlanmış olarak sona erer Result .

Bu yöntem yalnızca iki veri kaynağından birinden bir öğe tüketir, her ikisini de kullanmaz.

Özel durumlar

şeklindedir source1 null.

-veya- şeklindedir action1 null.

-veya- şeklindedir source2 null.

-veya- şeklindedir action2 null.

Şunlara uygulanır

Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions)

İki veri akışı kaynağını izler ve sağlanan işleyiciyi hangi kaynak için önce kullanılabilir hale getirirse çağırarak izler.

public:
generic <typename T1, typename T2>
 static System::Threading::Tasks::Task<int> ^ Choose(System::Threading::Tasks::Dataflow::ISourceBlock<T1> ^ source1, Action<T1> ^ action1, System::Threading::Tasks::Dataflow::ISourceBlock<T2> ^ source2, Action<T2> ^ action2, System::Threading::Tasks::Dataflow::DataflowBlockOptions ^ dataflowBlockOptions);
public static System.Threading.Tasks.Task<int> Choose<T1,T2> (System.Threading.Tasks.Dataflow.ISourceBlock<T1> source1, Action<T1> action1, System.Threading.Tasks.Dataflow.ISourceBlock<T2> source2, Action<T2> action2, System.Threading.Tasks.Dataflow.DataflowBlockOptions dataflowBlockOptions);
static member Choose : System.Threading.Tasks.Dataflow.ISourceBlock<'T1> * Action<'T1> * System.Threading.Tasks.Dataflow.ISourceBlock<'T2> * Action<'T2> * System.Threading.Tasks.Dataflow.DataflowBlockOptions -> System.Threading.Tasks.Task<int>
Public Function Choose(Of T1, T2) (source1 As ISourceBlock(Of T1), action1 As Action(Of T1), source2 As ISourceBlock(Of T2), action2 As Action(Of T2), dataflowBlockOptions As DataflowBlockOptions) As Task(Of Integer)

Tür Parametreleri

T1

İlk kaynakta bulunan veri türünü belirtir.

T2

İkinci kaynakta bulunan veri türünü belirtir.

Parametreler

source1
ISourceBlock<T1>

İlk kaynak.

action1
Action<T1>

İlk kaynaktan veriler üzerinde yürütülecek işleyici.

source2
ISourceBlock<T2>

İkinci kaynak.

action2
Action<T2>

İkinci kaynaktan veriler üzerinde yürütülecek işleyici.

dataflowBlockOptions
DataflowBlockOptions

Bu seçimin yapılandırıldığı seçenekler.

Döndürülenler

Task<Int32>

Task<TResult> Zaman uyumsuz seçimi temsil eden bir. Her iki kaynak da seçim tamamlanmadan önce tamamlanırsa veya bir parçası dataflowBlockOptions olarak sağlanan seçenek tamamlanmadan önce iptal edilirseCancellationToken, sonuçta elde edilen görev iptal edilir. Kaynaklardan birinde kullanılabilir veriler olduğunda ve bunu seçime başarıyla yaydığında, işleyici tamamlandığında sonuçta elde edilen görev tamamlanır; İşleyici bir özel durum oluşturursa, görev durumunda sona erer Faulted ve işlenmeyen özel durumu içerir. Aksi takdirde, görev sırasıyla birinci veya ikinci kaynağı temsil etmek için 0 veya 1 olarak ayarlanmış olarak sona erer Result .

Özel durumlar

şeklindedir source1 null.

-veya- şeklindedir action1 null.

-veya- şeklindedir source2 null.

-veya- şeklindedir action2 null.

-veya- şeklindedir dataflowBlockOptions null.

Şunlara uygulanır