Função de when_all
Cria uma tarefa será concluída com êxito quando todas as tarefas fornecidas como argumentos concluída com êxito.
template <
typename _Iterator
>
auto when_all(
_Iterator_Begin,
_Iterator_End
) -> decltype (details::_WhenAllImpl<std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(nullptr, _Begin, _End));
template <
typename _Iterator
>
auto when_all(
_Iterator_Begin,
_Iterator_End,
cancellation_token _CancellationToken
) -> decltype (details::_WhenAllImpl<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 será criada com um token é uma combinação de todos os tokens canceláveis (símbolos criados por métodos diferentes de **cancellation_token::none()**tarefas fornecido.
Valor de retorno
Uma tarefa é concluída com êxito quando todas as tarefas de entrada foram concluídas com êxito.Se as tarefas de entrada são do tipo T, a saída dessa função será um task<std::vector<T>>.Se as tarefas de entrada são do tipo void a tarefa de saída também será um task<void>.
Comentários
Se uma das tarefas é cancelada ou lança uma exceção, a tarefa retornada será concluída no início, estado cancelados, e a exceção se encontrou, será lançada se você chamar get() ou wait() nessa tarefa.
Requisitos
Cabeçalho: ppltasks.h
Namespace: concorrência