A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://cplusplus.com/reference/future/promise/set_exception_at_thread_exit/ below:

public member function

<future>

std::promise::set_exception_at_thread_exit
void set_exception_at_thread_exit (exception_ptr p);

Set exception at thread exit

Stores the exception pointer p in the shared state without making it ready immediately. Instead, it will be made ready automatically at thread exit, once all objects of thread storage duration have been destroyed.

If a future object that is associated to the same shared state is waiting on a call to future::get, it stays blocked until the thread ends. Once the thread ends, it throws the exception object pointed by p.

Notice that calling this function already sets a value in the shared state, and any call that modifies this value between this call and the end of the thread will throw future_error with promise_already_satisfied as error condition.



Parameters
p
An exception_ptr object.
exception_ptr is a smart pointer type designed to reference exception objects.

Return value none

Data races The promise object is modified.
The shared state is modified as an atomic operation (causing no data races).

Exception safetyBasic guarantee: if an exception is thrown, the promise object is in a valid state.

This member function throws an exception on the following conditions:


Depending on the library implementation, this member function may also throw exceptions to report other situations.

See also
promise::set_exception
Set exception (public member function)
promise::set_value_at_thread_exit
Set value at thread exit (public member function)
future::get
Get value (public member function)

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4