Método de structured_task_group::run_and_wait
Agenda uma tarefa para ser executado embutido no contexto de chamada com o auxílio do structured_task_group o objeto para o suporte a cancelamento completo. Se um task_handle objeto é passado como um parâmetro para run_and_wait, o chamador é responsável por gerenciar a vida útil do task_handle objeto. A função espera até que todos funcionam na structured_task_group objeto concluída ou cancelado.
template<
class _Function
>
task_group_status run_and_wait(
task_handle<_Function>& _Task_handle
);
template<
class _Function
>
task_group_status run_and_wait(
const _Function& _Func
);
Parâmetros
_Function
O tipo de objeto de função que será chamado para executar o corpo da alça de tarefa._Task_handle
Um identificador para a tarefa que executará embutido no contexto de chamada. Observe que o chamador tem responsabilidade para a vida útil deste objeto. O tempo de execução continuará esperava viver até o run_and_wait método terminar execução._Func
Uma função que será chamada para invocar o corpo do trabalho. Isso pode ser um lambda ou outro objeto que oferece suporte a uma versão do operador de chamada de função com a assinatura void operator()().
Valor de retorno
Uma indicação que informa se a espera foi atendida ou o grupo de tarefas foi cancelado, devido a uma operação de cancelamento explícita ou de uma exceção sendo lançada de uma das suas tarefas. Para obter mais informações, consulte task_group_status
Comentários
Observe que uma ou mais das tarefas agendadas para este structured_task_group objeto pode executar embutido no contexto de chamada.
Se um ou mais das tarefas agendadas para este structured_task_group objeto lança uma exceção, o runtime irá selecionar um tal exceção de sua escolha e propagá-la fora da chamada para o run_and_wait método.
Depois que essa função retorna, o structured_task_group objeto é considerado em um estado final e não deve ser usado. Observe que uso após o run_and_wait método retorna resultará em um comportamento indefinido.
No caminho de execução-excepcional, você tem uma norma para chamar esse método ambos ou o wait método antes do destruidor da structured_task_group executa.
Requisitos
Cabeçalho: PPL.h
Namespace: Simultaneidade
Consulte também
Referência
Método de structured_task_group::Run
Método de structured_task_group::wait