promise::set_value方法
基本存储值由于 promise 对象并将 关联的异步状态 准备。
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();
参数
- Val
作为结果要存储的值。
备注
如果 promise 对象不具备 no_state错误代码关联的异步状态,此方法将引发 future_error。
如果 set_exception、set_exception_at_thread_exit、set_value或 set_value_at_thread_exit 为具有 promise_already_satisfied错误代码。的同一个关联的异步模式的 promise 对象已被调用,此方法将引发 future_error
此方法,在关联的异步状态块的所有线程已取消阻止。
第一个方法还引发引发的所有异常,则 Val 复制到关联的异步模式时。 在这种情况下,该关联的异步状态未设置准备。
第二个方法还引发引发的所有异常,则 Val 移至该关联的异步模式时。 在这种情况下,该关联的异步状态未设置准备。
对于部分专用化 promise<Ty&>,存储的值实际上是对 Val。
对专用化 promise<void>,存储的值不存在。
要求
**标头:**将来
**命名空间:**std