排他制御

排他制御とは、データベースやファイルに対する書き込み処理を制御すること。

複数の編集者並びに利用者がある情報を同時に書き込み・編集した場合、そのデーターの整合性が失われる可能性がある。それを防ぐために一方が更新を行う際は他方は更新が行えないようにすることを排他制御という。
主に、データの参照や読み取りは可能な共有ロックと、読み取りも書き込みもロックする占有ロックがある。
排他制御を行うことで、例えばECサイトで複数ユーザーに注文確定処理を同時に行われることを防ぎ、定めた在庫以上に注文を受け付けないようにすることができる。

なお、複数ファイルのロックを行っている際、アクセスしているユーザーが互いにロックしているデータの解除待ちになってしまうことをデッドロックと呼ぶ。システム設計上の欠陥と考えられ、処理が停止してしまう。