std::future_error - cppreference.com

From cppreference.com

classfuture_error;(since C++11)The class

std::future_error

defines an exception object that is thrown on failure by the functions in the thread library that deal with asynchronous execution and shared states (

std::future

,

std::promise

, etc). Similar to

std::system_error

, this exception carries an error code compatible with

std::error_code

.

Inheritance diagram

Member functions

creates a std::future_error object
(public member function)

[edit]

replaces the std::future_error object
(public member function)

[edit]

returns the error code
(public member function)

[edit]

returns the explanatory string specific to the error code
(public member function)

[edit]

Inherited from

std::logic_error

Inherited from

std::exception

Member functions

[virtual]

destroys the exception object
(virtual public member function of std::exception)

[edit]

[virtual]

returns an explanatory string
(virtual public member function of std::exception)

[edit]

Example

Run this code

#include<future>#include<iostream>intmain(){std::future<int>empty;try{intn=empty.get();// The behavior is undefined, but// some implementations throw std::future_error}catch(conststd::future_error&e){std::cout<<"Caught a future_error with code \""<<e.code()<<"\"\nMessage: \""<<e.what()<<"\"\n";}}Possible output:

Caught a future_error with code "future:3" Message: "No associated state" See also