CARVIEW |
Select Language
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Sat, 26 Jul 2025 17:48:08 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Location: /reference/future/shared_future/shared_future/
HTTP/1.1 200 OK
Server: nginx
Date: Sat, 26 Jul 2025 17:48:08 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
ETag: W/"726b-SAiaAL8tkRJ7dS+MIT5Ymy3ZXSY"
Content-Encoding: gzip
Constructs a shared_future object:
Shared futures with valid shared states are obtained from future objects, either by using the move constructor (4) or by calling member future::share.
For the other constructors, shared_future constructors never throw exceptions (no-throw guarantee).
Reference
C library:
- <cassert> (assert.h)
- <cctype> (ctype.h)
- <cerrno> (errno.h)
-
<cfenv> (fenv.h)C++11
- <cfloat> (float.h)
-
<cinttypes> (inttypes.h)C++11
- <ciso646> (iso646.h)
- <climits> (limits.h)
- <clocale> (locale.h)
- <cmath> (math.h)
- <csetjmp> (setjmp.h)
- <csignal> (signal.h)
- <cstdarg> (stdarg.h)
-
<cstdbool> (stdbool.h)C++11
- <cstddef> (stddef.h)
-
<cstdint> (stdint.h)C++11
- <cstdio> (stdio.h)
- <cstdlib> (stdlib.h)
- <cstring> (string.h)
-
<ctgmath> (tgmath.h)C++11
- <ctime> (time.h)
-
<cuchar> (uchar.h)C++11
- <cwchar> (wchar.h)
- <cwctype> (wctype.h)
Containers:
-
<array>C++11
- <deque>
-
<forward_list>C++11
- <list>
- <map>
- <queue>
- <set>
- <stack>
-
<unordered_map>C++11
-
<unordered_set>C++11
- <vector>
-
Input/Output:
Multi-threading:
-
<atomic>C++11
-
<condition_variable>C++11
-
<future>C++11
-
<mutex>C++11
-
<thread>C++11
-
Other:
- <algorithm>
- <bitset>
-
<chrono>C++11
-
<codecvt>C++11
- <complex>
- <exception>
- <functional>
-
<initializer_list>C++11
- <iterator>
- <limits>
- <locale>
- <memory>
- <new>
- <numeric>
-
<random>C++11
-
<ratio>C++11
-
<regex>C++11
- <stdexcept>
- <string>
-
<system_error>C++11
-
<tuple>C++11
-
<type_traits>C++11
-
<typeindex>C++11
- <typeinfo>
- <utility>
- <valarray>
<future>
classes
-
futureC++11
-
future_errorC++11
-
packaged_taskC++11
-
promiseC++11
-
shared_futureC++11
-
enum classes
-
future_errcC++11
-
future_statusC++11
-
launchC++11
-
functions
-
asyncC++11
-
future_categoryC++11
-
shared_future
-
shared_future::~shared_futureC++11
-
shared_future::shared_futureC++11
member functions
-
shared_future::getC++11
-
shared_future::operator=C++11
-
shared_future::validC++11
-
shared_future::waitC++11
-
shared_future::wait_forC++11
-
shared_future::wait_untilC++11
-
- Reference
- <future>
- shared_future
- shared_future
public member function
<future>
std::shared_future::shared_future
default (1) | shared_future() noexcept; |
---|---|
copy (2) | shared_future (const shared_future& x); |
move (3) | shared_future (shared_future&& x) noexcept; |
move from future (4) | shared_future (future<T>&& x) noexcept; |
Construct shared_future
- (1) default constructor
- Constructs an empty shared_future: The object has no shared state, and thus is not valid, but it can be assigned a valid value.
- (2) copy constructor
- The constructed shared_future has the same shared state as x, with which it shares ownership.
- (3) (4) move constructors
- The constructed object acquires the shared state of x (if any).
x is left with no shared state (it is no longer valid).
Shared futures with valid shared states are obtained from future objects, either by using the move constructor (4) or by calling member future::share.
Parameters
- x
- Another shared_future object of the same type (with the same template parameter, T).
Or, for (4), a future object with the same template parameter (T).
Data races
The move constructors (3) and (4) modify x.Exception safety
Copying a shared_future object (2) that is not valid, produces undefined behavior (although library implementations may detect this and throw future_error with a no_state error condition).For the other constructors, shared_future constructors never throw exceptions (no-throw guarantee).
See also
- shared_future::operator=
- Assign shared future (public member function)
- shared_future::get
- Get value (public member function)
- future::share
- Get shared future (public member function)
Home page | Privacy policy
© cplusplus.com, 2000-2025 - All rights reserved - v3.3.4s
Spotted an error? contact us
© cplusplus.com, 2000-2025 - All rights reserved - v3.3.4s
Spotted an error? contact us