Dauer
Vorkenntnisse
Begleitliteratur
- Jeder Teilnehmer erhält eines meiner C++ Bücher zur freien Auswahl
Vorgehensweise
- Theorie und Praxis mit vielen Übungen, zu denen Sie den Sourcecode und die Musterlösungen erhalten
- Sie benötigen ein Laptop mit einem aktuellen C++ Compiler (mind. C++11).
Ziel
- Grundlegendes Verständnis des Speichermodells
- Souveräner Umgang mit der Mulitthreading Schnittstelle von C++
Standard
Inhalt
- Multithreading
- Threads
- Geteilte Variablen
- Mutexe und Locks
- Thread-sichere Initialisierung
- Thread-lokale Daten
- Bedingungsvariablen
- Tasks (Promise und Futures)
- Das Speichermodell
- Der Vertrag
- Atomare Variablen
- Die Synchronisations- und Ordnungsbedingungen
- Sequential Consistency
- Acquire-Release Semantic
- std::memory_order_consume
- Relaxed Semantic
- CppMem
- Parallele Algorithmen der Standard Template Library (C++17)
- Ausführungsstrategien
- Algorithmen
- C++20
- std::jthread
- Atomic Smart Pointers
- Latches und Barriers
- Semaphoren
- Coroutinen
- Synchronisierte Ausgabestreams
- Die Zukunft: C++23
- Executoren
- Erweiterte Futures
- Transactional Memory
- Task Blocks
Teilnahmebedingungen:
Die allgemeinen Teilnahmebedingungen befinden sich in den AGBs.