promise::set_value_at_thread_exit方法

由于 promise 对象,基本存储一个值。

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

参数

  • Val
    作为结果要存储的值。

备注

如果提交对象不具备 no_state错误代码 关联的 异步状态,此方法将引发 future_error

如果 set_exceptionset_exception_at_thread_exitset_valueset_value_at_thread_exit 为具有 promise_already_satisfied错误代码。的同一个关联的异步模式的 promise 对象已被调用,此方法将引发 future_error

set_value相反,后者,在销毁后,该关联的异步状态未设置准备,直到当前线程上的所有线程本地对象。 通常,在关联的异步状态阻塞的线程不会阻止,直到当前线程退出。

第一个方法还引发引发的所有异常,则 Val 复制到关联的异步模式时。

第二个方法还引发引发的所有异常,则 Val 移至该关联的异步模式时。

对于部分专用化 promise<Ty&>,存储的值有效是对 Val。

对专用化 promise<void>,存储的值不存在。

要求

**标头:**将来

**命名空间:**std

请参见

参考

promise Class

<future>