Sie befinden sich hier: Home › Seminare › Programmiersprachen › CPPTHREAD
Thread-Programmierung in C++
Moderne Prozessoren mit mehreren Kernen ermöglichen die gleichzeitige Ausführung mehrerer Befehle. Programme, die diese Architektur optimal nutzen möchten, müssen so strukturiert werden, dass sie Aufgaben parallel ausführen können. In diesem Seminar lernen Sie, wie Sie solche Multithreaded-Anwendungen in C++ entwickeln. Der Kurs bietet eine Einführung in die Bibliothek Boost.Thread, die in die nächste Version des C++-Standards aufgenommen wird, sowie in die Intel Threading Building Blocks, die die Strukturierung von Multithreaded-Code auf einer höheren Abstraktionsebene ermöglichen. Der Einstieg erfolgt über OpenMP, einen Standard, mit dem Code effizient parallelisiert werden kann und der von modernen Compilern wie Visual C++ und GCC unterstützt wird.
Inhalte des Seminars
Einführung in die Entwicklung von Multithreaded-Anwendungen
- Multitasking und Multithreading
- Multithreading in C++ und dem C++-Standard
- Zugriff von mehreren Threads auf gemeinsam genutzte Daten
OpenMP
- Präprozessoranweisungen zum Parallelisieren von Code
- Threaderzeugung
- Thread-Synchronization
- Gültigkeitsbereiche für Variablen
- OpenMP-API-Funktionen
Boost.Thread
- Starten und Beenden von Threads
- Unterbrechungspunkte
- Thread-Synchronization mit Mutex, Bedingung und Barrier
- Locking-Mechanismen
- Einmaliger Funktionsaufruf pro Thread
- Thread Local Storage
Intel Threading Building Blocks
- Algorithmen
- Container
- Speicherallokation
- Synchronisation
- Task Scheduling
Termine / Kontakt
Jedes Seminar führt tutego als kundenangepasstes Inhouse-Seminar durch.
Alle unsere Seminare können zudem als Live-Online-Seminar besucht werden.
Wir helfen Ihnen gerne bei der Anmeldung und einen passenden Termin zu finden. Kontaktieren Sie uns per E-Mail oder unter 0800/tutegos (kostenlos aus allen Netzen).
Die Fakten
- Empfohlene Schulungsdauer: 2 Tage, insgesamt 16 Unterrichtsstunden à 45 Minuten
- Zielgruppe: C++-Entwickler, die die Möglichkeiten schneller Multicore-Architekturen nutzen, sowie die Feinheiten der Synchronisation und Thread-Kommunikation kennenlernen möchten.
- Vorkenntnisse: Die Kurse ›Effektive Software-Entwicklung mit C++‹ und ›Standard Template Library (STL) und Standard C++ Library‹ oder vergleichbare Kenntnisse.
- Schulungsunterlagen: Deutschsprachige Unterlagen (Online-Bücher).
- Seminar-Software: Basis des Seminars sind die aktuellen Versionen der Boost- und Intel TBB-Bibliotheken und der Compiler Visual C++ oder GCC
Weiterführende Seminare
Das Seminar Effektive Software-Entwicklung mit C++ gibt wertvolle Hinweise zur effektiven Programmierung etwa mit Ausnahmen, Templates oder Smart Pointer. Effektive Softwareentwicklung bedeutet, dass Entwickler auf Standardbibliotheken zurückgreifen. In C++ sind das STL und Boost. Unser Seminar Standard Template Library (STL) und Standard C++ Library gibt einen tiefen Einblick in die Bibliotheken und der Kurs C++ Design Patterns und Idiome gibt wertvolle Hinweise zum Programmieren im Großen. C++11: Neuerungen im C++-Standard liefert alle Updates zur neuesten C++-Version.