処理中・編集中のデータへのアクセスを制限する

排他制御 (はいたせいぎょ)というのは、データベース、システムなどでよく使われる言葉です。

機能といってもいいでしょう。

分かりやすくいうと、排他制御とは、処理中や編集中のデータがあれば、他からのアクセスを制限するということです。

排他制御

これを ロックといいます。

ロックには、共有ロックと占有ロックがあります。

共有ロック
データの参照・読み取りはできます。書き込みや編集はできません。

共有されているデータやファイルなどで すでに誰かがアクセスしている場合は、他の人がアクセスすると読み取り専用になります。

占有ロック

読み取りも書き込みもできません。

ロックが解除されたら アクセスすることができます。

デッドロック

複数のデータにそれぞれロックがかかり、アクセスしているユーザーが他のデータのロック解除待ちになっている状態です。

処理が停止してしまうということも考えられます。

設計の欠陥で起きることがありますが、システムが作られる際は デッドロックを防ぐ処理もされています。

もともと排他制御というのは、データベースにアクセスする際に使われている言葉ですが、身近なところで活用されています。

例えば 共有されているExcelのファイルは、誰かがアクセスしていれば、読み取り専用になります。

通販サイトや列車予約でも1つの在庫や席を複数の人が同時に手続きして 数に不整合が生じたということもありません。

排他制御がはたらいているということになります。