Ich glaube, ich habe einen Artikel gesehen, der mathematisch bewiesen hat, dass jeder Algorithmus auf eine wartefreie Weise geschrieben werden kann (was im Grunde bedeutet, dass man sich darauf verlassen kann, dass jeder Thread immer Fortschritte auf dem Weg zu seinem Ziel macht). Das bedeutet, dass es auf jede große Anwendung angewendet werden kann (schließlich ist ein Programm einfach ein Algorithmus mit vielen, vielen Parametern) und weil Wartefreiheit sicherstellt, dass weder Deadlocks noch Lebendlocks auftreten (solange es keine Fehler gibt, die sie davon abhalten, wirklich wartefrei zu sein), vereinfacht es diese Seite des Programms. Andererseits ist ein mathematischer Beweis jedoch weit entfernt von der tatsächlichen Implementierung des Codes (soweit ich weiß gibt es nicht einmal eine vollständig lock-freie verkettete Liste, die auf PCs ausgeführt werden kann, ich habe welche gesehen, die die meisten Teile abdecken, aber sie können in der Regel entweder nicht mit einigen gängigen Funktionen umgehen oder einige Funktionen erfordern, dass die Struktur gesperrt wird).
Übrigens habe ich auch einen anderen Beweis gefunden, der zeigte, dass jeder lock-freie Algorithmus tatsächlich als wartefrei betrachtet werden kann, aufgrund der Gesetze der Wahrscheinlichkeit und verschiedener anderer Faktoren.