Our website is made possible by displaying online advertisements to our visitors.
Please consider supporting us by disabling your ad blocker.

Responsive image


Wettlaufsituation

Eine Wettlaufsituation,[1] aus dem Englischen auch Race Condition (deutsch Wettlauf-Bedingung) oder Race Hazard (deutsch Wettlauf-Risiko), mitunter auch „kritische Wettlaufsituation“, bezeichnet in der Programmierung eine Konstellation, in der das Ergebnis einer Operation vom zeitlichen Verhalten bestimmter Einzeloperationen oder der Umgebung abhängt. Der Begriff stammt von der Vorstellung, dass zwei Signale wettlaufen, um die Ausgabe als erstes zu beeinflussen. Im Allgemeinen ist die Möglichkeit zu vermeiden, dass eine Race Condition entsteht.

Unbeabsichtigte Wettlaufsituationen sind ein häufiger Grund für schwer auffindbare nichtdeterministische Programmfehler. Bezeichnend für solche Situationen ist, dass bereits die veränderten Bedingungen zum Programmtest, wie zusätzliches Logging oder Debug-Modus, zu einem völligen Verschwinden der Symptome führen können – siehe hierzu auch Heisenbug. Zur Vermeidung solcher Konstellationen können bei der Programmerstellung beispielsweise Semaphore eingesetzt werden.

  1. Simon Hoffmann, Rainer Lienhart: OpenMP. Eine Einführung in die parallele Programmierung mit C/C++. Online-Ausgabe des korrigierten Nachdrucks. Springer-Verlag, Berlin und Heidelberg 2009, S. 92 (Download über SpringerLink).

Previous Page Next Page