Ich lese das Buch Java Concurrency in der Praxis . In Kapitel 15 sprechen sie über die nicht blockierenden Algorithmen und die CAS-Methode ( Compare-and-Swap ).
Es steht geschrieben, dass CAS viel besser abschneidet als die Sperrmethoden. Ich möchte die Leute fragen, die bereits mit diesen beiden Konzepten gearbeitet haben, und möchte hören, wann Sie welches dieser Konzepte bevorzugen? Ist es wirklich so viel schneller?
Für mich ist die Verwendung von Schlössern viel klarer und verständlicher und vielleicht sogar besser zu warten (bitte korrigieren Sie mich, wenn ich falsch liege) . Sollten wir uns wirklich darauf konzentrieren, unseren gleichzeitigen Code in Bezug auf CAS als Sperren zu erstellen, um eine bessere Leistungssteigerung zu erzielen, oder ist Nachhaltigkeit wichtiger?
Ich weiß, dass es vielleicht keine strenge Regel gibt, wann was zu verwenden ist. Aber ich möchte nur einige Meinungen und Erfahrungen mit dem neuen Konzept von CAS hören.