Partilhar via


<future>

Inclua o cabeçalho padrão <future> para definir classes de modelo e modelos de suporte que simplificam executar uma função - possível em uma separada de segmento e recuperar o resultado.O resultado é tanto o valor retornado pela função ou por uma exceção que é emitida pela função mas não for detectado na função.

Este cabeçalho usa o tempo de execução (ConcRT) de simultaneidade para que você possa usar o em conjunto com outros mecanismos de ConcRT.Para obter mais informações sobre ConcRT, consulte Tempo de execução de concorrência.

#include <future>

Comentários

ObservaçãoObservação

No código que é criado usando /clr ou /clr:pure, este cabeçalho é bloqueado.

Um provedor assíncrono armazena o resultado de uma chamada de função.Um objeto de retorno assíncrono é usado para recuperar o resultado de uma chamada de função.Um estado assíncrono associado fornecem comunicação entre um provedor assíncrona e um ou mais objetos de retorno assíncronas.

Um programa não cria os objetos diretamente associados assíncronas de estado.O programa cria um provedor assíncrono sempre que precisa de um e de que cria um objeto de retorno assíncrona que compartilhar seu estado assíncrono associado com o provedor.Os provedores assíncronos e retornar objetos de assíncronos gerenciam os objetos que contêm seu estado assíncrono associado compartilhado.Quando o objeto do último que referencia o estado assíncrono associado, o libera o objeto que mantém o estado assíncrono associado é destruído.

Um provedor assíncrono ou um objeto de retorno assíncrono que não tem estado assíncrono associado são vazia.

Um estado assíncrono associado está pronto somente se o seu provedor assíncrono armazenou um valor de retorno ou armazenou uma exceção.

A função async de modelo e as classes promise e packaged_task de modelo são provedores assíncronas.As classes future e shared_future de modelo descrevem objetos de retorno assíncronas.

Cada modelo de classe promise, future, e shared_future tem uma especialização para o tipo void e uma especialização parcial para armazenar e recuperar um valor por referência.Essas especializações diferem de modelo primária apenas nas assinaturas e em semântica das funções que armazenam e recuperam o valor retornado.

Membros

Hh920535.collapse_all(pt-br,VS.110).gifClasses

Nome

Descrição

Classe futura

Descreve um objeto de retorno assíncrono.

Classe future_error

Descreve um objeto de exceção que pode ser lançada por métodos de tipos que gerenciam objetos de future .

Classe packaged_task

Descreve um provedor assíncrono que é um wrapper de chamada e uma cujo a assinatura de chamada é Ty(ArgTypes...).Seu estado assíncrono associado contém uma cópia do seu objeto acessível além do que o resultado em potencial.

promise Class

Descreve um provedor assíncrono.

Classe shared_future

Descreve um objeto de retorno assíncrono.Contrariamente a um objeto de future , um provedor assíncrona pode ser associado com qualquer número de objetos de shared_future .

Hh920535.collapse_all(pt-br,VS.110).gifEstruturas

Nome

Descrição

Estrutura is_error_code_enum

Especialização que indica que future_errc é apropriado para armazenar error_code.

Estrutura uses_allocator

Especialização que contém sempre true.

Hh920535.collapse_all(pt-br,VS.110).gifFunções

Nome

Descrição

Função Async

Representa um provedor assíncrono.

Função future_category

Retorna uma referência para o objeto de error_category que apresenta os erros que são associados aos objetos de future .

Função make_error_code

Cria error_code que tem o objeto de error_category que apresenta erros de future .

Função make_error_condition

Cria error_condition que tem o objeto de error_category que apresenta erros de future .

trocar função (<future>)

Troca o estado assíncrono associado de um objeto de promise com o que de outro.

Hh920535.collapse_all(pt-br,VS.110).gifEnumerações

Nome

Descrição

Enumeração future_errc

Fornece nomes token para os erros que são relatados pela classe de future_error .

Enumeração future_status

Fornece nomes token por razões que uma função agendada de espera pode retornar.

launch Enumeration

Representa um tipo de máscara de bits que descreve os modos possíveis para a função asyncdo modelo.

Consulte também

Outros recursos

Arquivos de cabeçalho