Best Practices für Concurrency oder was wir (schmerzhaft) gelernt haben

17:00 bis 17:50 in Raum V1

Rainer Grimm

Mit der Veröffentlichung von C++11 erhielt C++ eine Multithreading-Bibliothek und ein Speichermodell. Die Bibliothek besitzt elementare Bausteine wie atomare Variablen, Threads, Tasks, Locks und Bedingungsvariablen. Das Speichermodell bietet Garantien für die Thread-sichere Verwendung dieser elementaren Bausteine an. Sieben Jahre später haben sich viele Best Practices herauskristallisiert, wie sich die Multithreading-Bibliothek und das Speichermodell sicher anwenden lässt. Genau diese Best Practices sind Inhalt dieses Vortrags. Diese bewährten Rezepte werden sich mit allgemeinen Regeln zur Gleichzeitigkeit, aber auch Regeln zur Multithreading-Bibliothek und zum Speichermodell beschäftigen. Daher geht der Fokus der vorgestellten Best Practices weit über die Sprache C++ hinaus.

Vorwissen

Ab und zu ein wenig Multithreading-Grundlagen, starke Nerven

Über mich

Rainer Grimm ist seit vielen Jahren als Softwarearchitekt, Team- und Schulungsleiter tätig. Auf seinem Blog “Modernes C++” auf heise Developer beschäftigt er sich intensiv mit seiner Leidenschaft C++. Seit 2016 steht er auf selbstständigen Beinen. Insbesondere das Vermitteln von Wissen zu modernem C++ ist ihm eine Herzensangelegenheit. Seine Bücher “C++11 für Programmierer”, “C++” und “C++-Standardbibliothek” für die “kurz und gut”-Reihe sind beim Verlag O’Reilly erschienen. Seine englischsprachigen Werke “The C++ Standard Library” und “Concurrency with Modern C++” hat er direkt bei Leanpub veröffentlicht. Diese sind in der mehreren Sprachen erhältlich.