Thread support library
C++ bietet integrierte Unterstützung für Threads, wechselseitigen Ausschluss, Bedingungsvariablen und Futures.
Threads
Mittels Threads können Programme über mehrere Prozessorkerne hinweg ausgeführt werden.
definiert in Header
<thread> | |
(C++11) |
verwaltet einen eigenen Thread Original: manages a separate thread The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klasse) |
Funktionen zur Verwaltung des aktuellen Threads | |
definiert in Namensraum
this_thread | |
(C++11) |
suggests that the implementation reschedule execution of threads (Funktion) |
(C++11) |
liefert die Thread-ID des aktuellen Threads Original: returns the thread id of the current thread The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) |
stoppt die Ausführung des aktuellen Threads für eine bestimmte Zeitdauer Original: stops the execution of the current thread for a specified time duration The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktion) |
(C++11) |
stoppt die Ausführung des aktuellen Threads bis zu einem festgelegten Zeitpunkt (Funktion) |
Gegenseitiger Ausschluss
Algorithmen zum gegenseitigen Ausschluss verhindern, dass mehrere Threads gleichzeitig auf gemeinsame Ressourcen zugreifen. Dies verhindert Data Races und bietet Unterstützung für die Synchronisierung zwischen Threads.
definiert in Header
<mutex> | |
(C++11) |
bietet die grundlegende Möglichkeit wechselseitigen Ausschlusses Original: provides basic mutual exclusion facility The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klasse) |
(C++11) |
bietet gegenseitigen Ausschluss Anlage, die mit einem Timeout Sperren implementiert Original: provides mutual exclusion facility which implements locking with a timeout The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klasse) |
(C++11) |
stellt wechselseitigen Ausschluss Anlage, die rekursiv von demselben Thread gesperrt werden Original: provides mutual exclusion facility which can be locked recursively by the same thread The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klasse) |
(C++11) |
stellt wechselseitigen Ausschluss Anlage, die recursively kann durch das gleiche Gewinde und Arbeitsgeräte Verriegeln mit einem Timeout verriegelt werden Original: provides mutual exclusion facility which can be locked recursively by the same thread and implements locking with a timeout The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klasse) |
Generic mutex management | |
(C++11) |
implementiert eine streng bereichsbasierte Mutex Eigentums-Wrapper Original: implements a strictly scope-based mutex ownership wrapper The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klassen-Template) |
(C++11) |
implementiert beweglichen Mutex Eigentums-Wrapper Original: implements movable mutex ownership wrapper The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klassen-Template) |
Tag-Typ verwendet werden, um Sperrstrategie angeben Original: tag type used to specify locking strategy The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klasse) | |
tag Konstanten verwendet werden, um Sperrstrategie angeben Original: tag constants used to specify locking strategy The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (konstanten) | |
Generic locking algorithms | |
(C++11) |
Versuche, das Eigentum an Mutexe via wiederholten Aufforderungen an try_lock erhalten Original: attempts to obtain ownership of mutexes via repeated calls to try_lock The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktions-Template) |
(C++11) |
sperrt angegebenen Mutexe, Blöcke wenn überhaupt verfügbar sind Original: locks specified mutexes, blocks if any are unavailable The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktions-Template) |
Original: Call once The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. | |
(C++11) |
Hilfsobjekt um sicherzustellen, dass call_once die Funktion aufruft nur einmal Original: helper object to ensure that call_once invokes the function only once The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klasse) |
(C++11) |
ruft eine Funktion nur einmal, auch wenn von mehreren Threads aufgerufen Original: invokes a function only once even if called from multiple threads The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Funktions-Template) |
Zustand Variablen
A condition variable is a synchronization primitive that allows multiple threads to communicate with eachother. It allows some number of threads to wait (possibly with a timeout) for notification from another thread that they may proceed. A condition variable is always associated with a mutex.
definiert in Header
<condition_variable> | |
(C++11) |
provides a condition variable associated with a std::unique_lock (Klasse) |
(C++11) |
provides a condition variable associated with any lock type (Klasse) |
(C++11) |
schedules a call to notify_all to be invoked when this thread is completely finished (Funktion) |
(C++11) |
lists the possible results of timed waits on condition variables (enum) |
Futures
Die Standardbibliothek bietet Möglichkeiten, Rückgabewerte von asynchronen Tasks (d. h. Funktionen, die in separaten Threads gestartet werden) zu erhalten, und Ausnahmen abzufangen, die von diesen Tasks ausgelöst werden. Diese Werte werden in einem gemeinsamen Zustandsobjekt gehalten, in welches der asynchrone Task seinen Rückgabewert schreiben oder eine Ausnahme speichern kann, und das von anderen Threads, die Instanzen oder Verweise dieses gemeinsamen Zustandsobjekts besitzen std::future oder std::shared_future, untersucht, abgewartet oder anderweitig manipuliert werden kann.
