std::shared_future<T>:: valid
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Getting the result | ||||
| State | ||||
|
shared_future::valid
|
||||
|
bool
valid
(
)
const
noexcept
;
|
(seit C++11) | |
Prüft, ob die Zukunft auf einen gemeinsamen Zustand verweist.
Dies trifft nur auf Futures zu, die nicht standardkonstruiert oder verschoben wurden. Im Gegensatz zu
std::future
wird der gemeinsame Zustand von
std::shared_future
nicht ungültig, wenn
get()
aufgerufen wird.
Das Verhalten ist undefiniert, wenn eine andere Memberfunktion als der Destruktor, der Kopierzuweisungsoperator, der Verschiebezuweisungsoperator oder
valid
auf ein
shared_future
aufgerufen wird, das nicht auf einen gemeinsamen Zustand verweist (obwohl Implementierungen dazu ermutigt werden,
std::future_error
mit der Angabe
no_state
in diesem Fall zu werfen). Es ist zulässig, von einem shared_future-Objekt zu verschieben oder zu kopieren, für das
valid()
false
ist.
Inhaltsverzeichnis |
Parameter
(keine)
Rückgabewert
true wenn * this auf einen gemeinsamen Zustand verweist, andernfalls false .
Beispiel
#include <future> #include <iostream> int main() { std::promise<void> p; std::shared_future<void> f = p.get_future(); std::cout << std::boolalpha; std::cout << f.valid() << '\n'; p.set_value(); std::cout << f.valid() << '\n'; f.get(); std::cout << f.valid() << '\n'; }
Ausgabe:
true true true
Siehe auch
|
wartet, bis das Ergebnis verfügbar ist
(öffentliche Elementfunktion) |