Book Java Concurrency in Practiceを読んでいます。第 15 章では、ノンブロッキング アルゴリズムとコンペア アンド スワップ(CAS) メソッドについて説明しています。
CAS はロック方式よりもはるかに優れたパフォーマンスを発揮すると書かれています。すでにこれらの両方の概念を使用している人々に聞きたいのですが、これらの概念のどちらを好むかを知りたいですか? 本当にそんなに速いのですか?
私にとって、ロックの使用法ははるかに明確で理解しやすく、おそらく維持するのも優れています(間違っている場合は修正してください)。パフォーマンスを向上させるために、ロックよりも CAS に関連する並行コードの作成に本当に集中すべきでしょうか、それとも持続可能性の方が重要なのでしょうか?
いつ何を使用するかという厳密な規則はないかもしれません。しかし、CAS の新しい概念に関する意見や経験を聞きたいと思います。