ADO.NET を使うと楽観的同時実行制御を容易に実装できる事、そして、超有名な「楽観的ロックでいいじゃん!」のお陰で、楽観的同時実行制御は、特に Web アプリケーション開発では広く使われているのではないでしょうか。勿論、大概のアプリケーションでは楽観的同時実行制御で十分なのかもしれません。しかし「楽観的同時実行制御こそが正義だ」と盲信されかねない空気に警鐘を鳴らす為にも、今一度考えてみましょう。 まず、楽観的同時実行制御、悲観的同時実行制御とは何なのかを整理してみます。先でも紹介した大西彰さんの記事には、悲観的ロックと楽観的ロックを対比してまとめてくれています(もう 2 年以上前の記事ですね。読んだ事がない人は是非一読を)。 「楽観的ロックでいいじゃん! 」より 悲観的ロック:ステートフルなロック 更新したい対象のリソースを照会して取得した直後から更新が終わるまでロックを維持すること