DataflowBlock.Choose Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>) |
Supervisa tres orígenes de flujo de datos, invocando el controlador proporcionado para cualquier origen que haga que los datos se encuentren disponibles en primer lugar. |
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions) |
Supervisa tres orígenes de flujo de datos, invocando el controlador proporcionado para cualquier origen que haga que los datos se encuentren disponibles en primer lugar. |
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>) |
Supervisa dos orígenes de flujo de datos, invocando el controlador proporcionado para cualquier origen que haga que los datos se encuentren disponibles en primer lugar. |
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions) |
Supervisa dos orígenes de flujo de datos, invocando el controlador proporcionado para cualquier origen que haga que los datos se encuentren disponibles en primer lugar. |
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>)
Supervisa tres orígenes de flujo de datos, invocando el controlador proporcionado para cualquier origen que haga que los datos se encuentren disponibles en primer lugar.
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)
Parámetros de tipo
- T1
Especifica el tipo de datos contenidos en el primer origen.
- T2
Especifica el tipo de datos contenidos en el segundo origen.
- T3
Especifica el tipo de datos contenidos en el tercer origen.
Parámetros
- source1
- ISourceBlock<T1>
El primer origen.
- action1
- Action<T1>
Controlador que se va a ejecutar en datos del primer origen.
- source2
- ISourceBlock<T2>
El segundo origen.
- action2
- Action<T2>
Controlador que se va a ejecutar en datos del segundo origen.
- source3
- ISourceBlock<T3>
El tercer origen.
- action3
- Action<T3>
Controlador que se va a ejecutar en datos del tercer origen.
Devoluciones
Task<TResult> que representa la elección asincrónica. Si todos los orígenes se completan antes de completar la selección, la tarea resultante se cancelará. Cuando uno de los orígenes tiene datos disponibles y los propaga correctamente a la opción, la tarea resultante se completará cuando se complete el controlador; si el controlador produce una excepción, la tarea finalizará en el estado Faulted y contendrá la excepción no controlada. En caso contrario, la tarea finalizará con la propiedad Result establecida en el índice de base 0 del origen.
Este método solo consumirá un elemento de uno de los orígenes de datos, nunca de más de uno.
Excepciones
El valor de source1
es null
.
o bien
El valor de action1
es null
.
o bien
El valor de source2
es null
.
o bien
El valor de action2
es null
.
o bien
El valor de source3
es null
.
o bien
El valor de action3
es null
.
Se aplica a
Choose<T1,T2,T3>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, ISourceBlock<T3>, Action<T3>, DataflowBlockOptions)
Supervisa tres orígenes de flujo de datos, invocando el controlador proporcionado para cualquier origen que haga que los datos se encuentren disponibles en primer lugar.
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)
Parámetros de tipo
- T1
Especifica el tipo de datos contenidos en el primer origen.
- T2
Especifica el tipo de datos contenidos en el segundo origen.
- T3
Especifica el tipo de datos contenidos en el tercer origen.
Parámetros
- source1
- ISourceBlock<T1>
El primer origen.
- action1
- Action<T1>
Controlador que se va a ejecutar en datos del primer origen.
- source2
- ISourceBlock<T2>
El segundo origen.
- action2
- Action<T2>
Controlador que se va a ejecutar en datos del segundo origen.
- source3
- ISourceBlock<T3>
El tercer origen.
- action3
- Action<T3>
Controlador que se va a ejecutar en datos del tercer origen.
- dataflowBlockOptions
- DataflowBlockOptions
Las opciones con las que se van a configurar esta opción.
Devoluciones
Task<TResult> que representa la elección asincrónica. Si todos los orígenes se completan antes de completar la selección o si el CancellationToken proporcionado como parte de dataflowBlockOptions
se cancela antes de completar la selección, la tarea resultante se cancelará. Cuando uno de los orígenes tiene datos disponibles y los propaga correctamente a la opción, la tarea resultante se completará cuando se complete el controlador; si el controlador produce una excepción, la tarea finalizará en el estado Faulted y contendrá la excepción no controlada. En caso contrario, la tarea finalizará con la propiedad Result establecida en el índice de base 0 del origen.
Este método solo consumirá un elemento de uno de los orígenes de datos, nunca de más de uno. Si se solicita la cancelación una vez recibido un elemento, la solicitud de cancelación se omitirá y se permitirá que el controlador pertinente se ejecute.
Excepciones
El valor de source1
es null
.
o bien
El valor de action1
es null
.
o bien
El valor de source2
es null
.
o bien
El valor de action2
es null
.
o bien
El valor de source3
es null
.
o bien
El valor de action3
es null
.
o bien
El valor de dataflowBlockOptions
es null
.
Se aplica a
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>)
Supervisa dos orígenes de flujo de datos, invocando el controlador proporcionado para cualquier origen que haga que los datos se encuentren disponibles en primer lugar.
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)
Parámetros de tipo
- T1
Especifica el tipo de datos contenidos en el primer origen.
- T2
Especifica el tipo de datos contenidos en el segundo origen.
Parámetros
- source1
- ISourceBlock<T1>
El primer origen.
- action1
- Action<T1>
Controlador que se va a ejecutar en datos del primer origen.
- source2
- ISourceBlock<T2>
El segundo origen.
- action2
- Action<T2>
Controlador que se va a ejecutar en datos del segundo origen.
Devoluciones
Task<TResult> que representa la elección asincrónica. Si ambos orígenes se completan antes de completar la selección, la tarea resultante se cancelará. Cuando uno de los orígenes tiene datos disponibles y los propaga correctamente a la opción, la tarea resultante se completará cuando se complete el controlador; si el controlador produce una excepción, la tarea finalizará en el estado Faulted y contendrá la excepción no controlada. En caso contrario, la tarea finalizará con la propiedad Result establecida en 0 o 1 para representar el primer o el segundo origen, respectivamente.
Este método solo consumirá un elemento de uno de los dos orígenes de datos, nunca de ambos.
Excepciones
El valor de source1
es null
.
o bien
El valor de action1
es null
.
o bien
El valor de source2
es null
.
o bien
El valor de action2
es null
.
Se aplica a
Choose<T1,T2>(ISourceBlock<T1>, Action<T1>, ISourceBlock<T2>, Action<T2>, DataflowBlockOptions)
Supervisa dos orígenes de flujo de datos, invocando el controlador proporcionado para cualquier origen que haga que los datos se encuentren disponibles en primer lugar.
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)
Parámetros de tipo
- T1
Especifica el tipo de datos contenidos en el primer origen.
- T2
Especifica el tipo de datos contenidos en el segundo origen.
Parámetros
- source1
- ISourceBlock<T1>
El primer origen.
- action1
- Action<T1>
Controlador que se va a ejecutar en datos del primer origen.
- source2
- ISourceBlock<T2>
El segundo origen.
- action2
- Action<T2>
Controlador que se va a ejecutar en datos del segundo origen.
- dataflowBlockOptions
- DataflowBlockOptions
Las opciones con las que se van a configurar esta opción.
Devoluciones
Task<TResult> que representa la elección asincrónica. Si ambos orígenes se completan antes de completar la selección o si el CancellationToken proporcionado como parte de dataflowBlockOptions
se cancela antes de completar la selección, la tarea resultante se cancelará. Cuando uno de los orígenes tiene datos disponibles y los propaga correctamente a la opción, la tarea resultante se completará cuando se complete el controlador; si el controlador produce una excepción, la tarea finalizará en el estado Faulted y contendrá la excepción no controlada. En caso contrario, la tarea finalizará con la propiedad Result establecida en 0 o 1 para representar el primer o el segundo origen, respectivamente.
Excepciones
El valor de source1
es null
.
o bien
El valor de action1
es null
.
o bien
El valor de source2
es null
.
o bien
El valor de action2
es null
.
o bien
El valor de dataflowBlockOptions
es null
.