Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
206<br />
10 <strong>Race</strong> <strong>Conditions</strong><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Abb. 10–3<br />
Die Happens-Before-Relation ordnet Operationen gemäß ihrer potenziellen Reihenfolge der<br />
Ausführung.<br />
Abbildung 10–4 zeigt, dass man nicht all zu früh ausschalten sollte, denn die Auswertung<br />
über die Halbordnung kann auch Data <strong>Race</strong>s »übersehen«, wenn es nur<br />
wenige Kontextwechsel gibt. Beim gezeigten Ablauf ist das der Fall (ein einziger<br />
Context Switch): Der Zugriff auf die gemeinsam verwendete Variable y ist nicht<br />
geschützt und dennoch gemäß Happens-Before geordnet.<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Abb. 10–4<br />
Dieses Data <strong>Race</strong> um y wird nicht erkannt, weil in der abgebildeten Scheduling-Reihenfolge<br />
beide Zugriffe auf y gemäß der Happens-Before-Relation geordnet sind.