Compartir a través de


when_any (Función)

Crea una tarea completar correctamente cuando las tareas cualquiera de las proporcionadas como argumentos se completan correctamente.

template<
   typename _Iterator
>
auto when_any(
   _Iterator_Begin,
   _Iterator_End
) -> decltype (details::_WhenAnyImpl<std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(nullptr, _Begin, _End));

template<
   typename _Iterator
>
auto when_any(
   _Iterator_Begin,
   _Iterator_End,
   cancellation_token _CancellationToken
) -> decltype (details::_WhenAnyImpl<std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(_CancellationToken._GetImplValue(), _Begin, _End));

Parámetros

  • _Iterator
    El tipo de iterador de entrada.

  • _Begin
    La posición del primer elemento del intervalo de elementos que se van a combinar en la tarea resultante.

  • _End
    La posición del primer elemento más allá del intervalo de elementos que se van a combinar en la tarea resultante.

  • _CancellationToken
    El token de cancelación que controla la cancelación de la tarea devuelta.Si no proporciona un token de cancelación, la tarea resultante recibirá el token de cancelación de la tarea que las causas que se completen.

Valor devuelto

Una tarea que se completa correctamente cuando de las tareas de entrada se haya completado correctamente.Si las tareas de entrada son de Ttipo, el resultado de esta función se task<std::pair<T, size_t>>>, donde es el resultado el primer elemento de pares de la tarea que completa, y el segundo elemento es el índice de la tarea que terminó.Si las tareas de entrada son de void escriba la salida es task<size_t>, donde es el índice el resultado de la tarea que completa.

Requisitos

encabezado: ppltasks.h

Simultaneidad deespacio de nombres:

Vea también

Referencia

concurrency (Espacio de nombres)

Conceptos

Paralelismo de tareas (Runtime de simultaneidad)