Função de when_any
Cria uma tarefa será concluída com êxito quando qualquer uma das tarefas fornecidas como argumentos é concluída com êxito.
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
O tipo de iterador de entrada._Begin
A posição do primeiro elemento no intervalo de elementos a serem combinados em tarefa resultante._End
A posição do primeiro elemento além do intervalo de elementos a serem combinados em tarefa resultante._CancellationToken
O símbolo de cancelamento que controla o cancelamento da tarefa retornada.Se você não fornecer um token de cancelamento, a tarefa resultante receberá o token de cancelamento da tarefa que faz com que ele complete.
Valor de retorno
Uma tarefa é concluída com êxito quando qualquer uma das tarefas de entrada foi concluída com êxito.Se as tarefas de entrada são do tipo T, a saída dessa função será um task<std::pair<T, size_t>>>, onde o primeiro elemento do par é o resultado da tarefa de conclusão e o segundo elemento é o índice da tarefa concluída.Se as tarefas de entrada são do tipo void a saída é um task<size_t>, onde o resultado é o índice da tarefa de conclusão.
Requisitos
Cabeçalho: ppltasks.h
Namespace: concorrência