Compartilhar via


Classe task

A classe task da Biblioteca de Padrões Paralelos (PPL). O objeto task representa o trabalho que pode ser executado de forma assíncrona e simultaneamente com outras tarefas e o trabalho paralelo produzido por algoritmos paralelos no Tempo de execução de simultaneidade. Produz um resultado de tipo _ResultType após uma conclusão bem-sucedida. Tarefas do tipo task<void> não produzem resultados. Uma tarefa pode ser aguardada e cancelada independentemente de outras tarefas. Ela também pode ser composta por outras tarefas usando continuations(then) e os padrões join(when_all) e choice(when_any).

Aviso

Este tópico contém informações para o C++ REST SDK 1.0 (codinome "Casablanca").Se você estiver usando uma versão mais recente da página da Web do Codeplex Casablanca, use então a documentação local em http://casablanca.codeplex.com/documentation.

template <    typename _Type > class task;  template <> class task<void>;  template<    typename _ReturnType > class task;

Parâmetros

  • _Type

  • T

  • _ReturnType
    O tipo de resultado desta tarefa.

Membros

Typedefs públicos

Nome

Descrição

result_type

O tipo do resultado que um objeto desta classe produz.

Construtores Públicos

Nome

Descrição

Construtor task::task (C++ REST SDK)

Sobrecarregado. Constrói um objeto task.

Métodos Públicos

Nome

Descrição

Método task::get (C++ REST SDK)

Sobrecarregado. Retorna o resultado produzido por essa tarefa. Se a tarefa não estiver em um estado terminal, uma chamada para get irá aguardar a conclusão da tarefa. Este método não retorna um valor quando chamado em uma tarefa com um result_type de void.

Método task::is_apartment_aware (C++ REST SDK)

Determina se a tarefa desvincula uma interface de Tempo de execução do Windows IAsyncInfo ou se é descendente de tal tarefa.

Método task::is_done

Determina se a tarefa foi concluída.

Método task::scheduler

Retorna o agendador para essa tarefa

Método task::then (C++ REST SDK)

Sobrecarregado. Adiciona uma tarefa de continuação para essa tarefa.

Método task::wait (C++ REST SDK)

Aguarda que essa tarefa alcance um estado terminal. É possível para wait executar a tarefa em linha, se todas as dependências de tarefas forem atendidas, e ela ainda não tiver sido escolhida para execução por um trabalho em segundo plano.

Operadores Públicos

Nome

Descrição

Operador task::operator!= (C++ REST SDK)

Sobrecarregado. Determina se dois objetos task representam tarefas internas diferentes.

Operador task::operator= (C++ REST SDK)

Sobrecarregado. Substitui o conteúdo de um objeto task por outro.

Operador task::operator== (C++ REST SDK)

Sobrecarregado. Determina se dois objetos task representam a mesma tarefa interna.

Comentários

Para obter mais informações, consulte Paralelismo de tarefa (tempo de execução de simultaneidade).

Requisitos

Cabeçalho: pplxtasks.h

Namespace: pplx

Consulte também

Referência

Namespace pplx