Namensräume
Varianten
Aktionen

std::shared_future<T>::get

Von cppreference.com
 
 
Bibliothek für nebenläufige Programmierung
Threads
(C++11)
(C++20)
this_thread Namespace
(C++11)
(C++11)
(C++11)
Kooperatives Beenden
Gegenseitiger Ausschluss
(C++11)
Allgemeines Sperrungsmanagement
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Bedingungsvariablen
(C++11)
Semaphoren
Latches und Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
(C++11)
Sichere Wiederherstellung
(C++26)
Hazard Pointer
Atomare Typen
(C++11)
(C++20)
Initialisierung von atomaren Typen
(C++11)(veraltet in C++20)
(C++11)(veraltet in C++20)
Speicherordnung
(C++11)(deprecated in C++26)
Freie Funktionen für atomare Operationen
Freie Funktionen für atomare Flags
 
 
Hauptvorlage
const T& get() const;
(1) (seit C++11)
std::shared_future<T&> Spezialisierungen
T& get() const;
(2) (seit C++11)
std::shared_future<void> Spezialisierung
void get() const;
(3) (seit C++11)

Die Memberfunktion get wartet (durch Aufruf von wait()), bis der gemeinsame Zustand bereit ist, und ruft dann den im gemeinsamen Zustand gespeicherten Wert ab (falls vorhanden).

Wenn valid() vor dem Aufruf dieser Funktion false ist, ist das Verhalten undefiniert.

Inhalt

[bearbeiten] Rückgabewert

1) Eine konstante Referenz auf den im gemeinsamen Zustand gespeicherten Wert. Das Verhalten des Zugriffs auf den Wert über diese Referenz, nachdem der gemeinsame Zustand zerstört wurde, ist undefiniert.
2) Die als Wert im gemeinsamen Zustand gespeicherte Referenz.
3) (keine)

[bearbeiten] Ausnahmen

Wenn eine Ausnahme im gemeinsamen Zustand gespeichert wurde, auf den sich die Future bezieht (z. B. durch einen Aufruf von std::promise::set_exception()), dann wird diese Ausnahme ausgelöst.

[bearbeiten] Hinweise

Der C++-Standard empfiehlt den Implementierungen, den Fall zu erkennen, wenn valid() vor dem Aufruf false ist, und eine std::future_error mit dem Fehlerzustand std::future_errc::no_state auszulösen.

[bearbeiten] Beispiel

[bearbeiten] Siehe auch

prüft, ob das Future einen gemeinsamen Zustand hat
(public member function) [bearbeiten]