20 Jahre Erfahrung FreeCall 0800 tutegos

Thread-Programmierung in C++

[LOGO]

Moderne Prozessoren besitzen mehr als einen Kern und können daher mehr als einen Befehl gleichzeitig ausführen. Programme, die von der vollen Leistungsfähigkeit moderner Prozessoren profitieren wollen, müssen daher so strukturiert werden, dass Aufgaben zeitgleich ausgeführt werden können. Wie dies in modernen C++-Anwendungen umgesetzt wird, lernen Sie in diesem Seminar. Dabei werden Sie in die Bibliothek Boost.Thread eingeführt, die in die kommende Version des C++-Standards aufgenommen wird. Sie lernen die Intel Threading Building Blocks kennen, die eine Strukturierung von Multithreaded-Code auf höherem Niveau ermöglichen. Der Einstieg in die Entwicklung von Multithreaded-Anwendungen geschieht jedoch über OpenMP - einem Standard, mit dem sehr einfach Code parallelisiert werden kann, und der von aktuellen Compiler-Versionen wie Visual C++ und GCC von Haus aus 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 kennen lernen 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. Unsere 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.

Verweise

Alle Kategorien

Was Teilnehmer sagen