Partilhar via


Método Promise::set_value

Atomic um valor armazena como o resultado do objeto de promise e define o estado assíncrono associadopara aprontar-se.

void promise::set_value(const Ty& Val);
void promise::set_value(Ty&& Val);
void promise<Ty&>::set_value(Ty& Val);
void promise<void>::set_value();

Parâmetros

  • Val
    O valor a ser armazenado como o resultado.

Comentários

Se o objeto de promise não tem estado assíncrono associado, gera esse método future_error que tem um código de erro de no_state.

Se set_exception, set_exception_at_thread_exit, set_value, ou set_value_at_thread_exit já tiverem sido chamados para um objeto de promise que tem o mesmo estado assíncrono associado, gera esse método future_error que tem um código de erro de promise_already_satisfied.

No resultado desse método, que todos os segmentos são bloqueados no estado assíncrono associado se torna desbloqueados.

O primeiro método também gera qualquer exceção que é lançada quando Val é copiado para o estado assíncrono associado.Nesta situação, o estado assíncrono associada não está definido para aprontar-se.

O segundo método também gera qualquer exceção que é lançada quando Val é movido no estado assíncrono associado.Nesta situação, o estado assíncrono associada não está definido para aprontar-se.

Para especialização parcial promise<Ty&>, o valor armazenado é aplicado uma referência a Val.

Para especialização promise<void>, nenhum valor armazenado existe.

Requisitos

futuro deCabeçalho:

Namespace: STD

Consulte também

Referência

promise Class

<future>