std::experimental::shared_future<T>:: shared_future
From cppreference.net
<
cpp
|
experimental
|
shared future
|
shared_future
(
)
noexcept
;
|
(1) | |
|
shared_future
(
std::
experimental
::
shared_future
<
T
>
&&
f
)
noexcept
;
|
(2) | |
|
shared_future
(
const
std::
experimental
::
shared_future
<
T
>
&
f
)
;
|
(3) | |
|
shared_future
(
std::
experimental
::
future
<
std::
experimental
::
shared_future
<
T
>>
&&
other
)
noexcept
;
|
(4) | |
|
shared_future
(
std::
experimental
::
future
<
T
>
&&
f
)
noexcept
;
|
(5) | |
1)
Standardkonstruktor. Konstruiert ein leeres
shared_future
Objekt, das keinen gemeinsamen Zustand referenziert.
2)
Konstruiert ein
shared_future
-Objekt, das den gemeinsam genutzten Zustand von
f
überträgt, falls vorhanden. Nach der Konstruktion ist
f.
valid
(
)
false
.
3)
Konstruiert ein shared future, das sich auf denselben gemeinsamen Zustand wie
f
bezieht, falls vorhanden.
4)
Entpackender Konstruktor. Konstruiert ein
shared_future
-Objekt aus dem durch
other
referenzierten gemeinsamen Zustand, falls vorhanden. Wenn
other.
valid
(
)
==
false
vor diesem Aufruf, ist das konstruierte
shared_future
-Objekt leer. Andernfalls wird das resultierende
shared_future
-Objekt bereit, wenn eines der folgenden Ereignisse eintritt:
-
other
und
other.
get
(
)
beide bereit sind. Der Wert oder die Ausnahme von
other.
get
(
)
wird im gemeinsamen Zustand des resultierenden
shared_future-Objekts gespeichert. -
other
ist bereit, aber
other.
get
(
)
ist ungültig. Eine Ausnahme vom Typ
std::future_error
mit einer Fehlerbedingung
std::future_errc::broken_promise
wird im gemeinsamen Zustand des resultierenden
shared_future-Objekts gespeichert.
Nachdem dieser Konstruktor zurückkehrt,
valid
(
)
entspricht dem Wert von
other.
valid
(
)
vor diesem Aufruf, und
other.
valid
(
)
==
false
.
5)
Erstellt ein
shared_future
-Objekt und überträgt den gemeinsamen Zustand, der von
f
gehalten wird, falls vorhanden. Nach der Konstruktion ist
f.
valid
(
)
false
.
Inhaltsverzeichnis |
Parameter
| f | - | ein weiteres Future-Objekt zur Initialisierung |
| other | - |
ein
std::experimental::future
Objekt zum Entpacken
|
Beispiel
|
Dieser Abschnitt ist unvollständig
Grund: Kein Beispiel |
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrektes Verhalten |
|---|---|---|---|
| LWG 2697 | Concurrency TS |
Verhalten des Unwrapping-Konstruktors ist unklar mit einem ungültigen
future
|
konstruiert einen leeren
future
|
Siehe auch
|
Konstruiert das Future-Objekt
(öffentliche Elementfunktion von
std::shared_future<T>
)
|