December 2013
Intermediate to advanced
560 pages
11h 4m
German
Die Grundlage für Multithreading ist ein definiertes Speichermodell. Dieses erhält C++11 in Anlehnung an Java.
Grundproblem des konkurrierenden Zugriffs
Das Grundproblem des konkurrierenden Zugriffs auf Variablen lässt sich einfach formulieren. Schreibt ein Thread eine gemeinsam genutzte Variable, während ein anderer diese liest, ist das Verhalten nicht deterministisch.
Der bekannte Programmschnipsel in Abbildung 12.1, der auf Deckers Algorithmus basiert (Dekker, 2011), soll das verdeutlichen, denn am Ende des Programms können sowohl r1 als auch r2 den Wert 0 besitzen.

Read now
Unlock full access