Race Conditions

Aus Xinux Wiki
Version vom 7. Oktober 2021, 09:36 Uhr von Thomas.will (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „*Eine Race Condition bezeichnet in der Programmierung eine bestimmte Konstellation *Das Ergebnis einer Operation vom zeitlichen Verhalten bestimmter Einzeloper…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen
  • Eine Race Condition bezeichnet in der Programmierung eine bestimmte Konstellation
  • 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.