排他ロック
exclusive lock
占有ロック
先にアクセスした主体の処理の終了まで、他の主体によるアクセスを制限・禁止する
ロックをかけている間は、ロックをかけた主体のみが好きにできる
DBのデータを更新する処理の流れ
代表的な排他ロックの方式
悲観ロック
イメージ通りの排他ロック
更新の競合は起き得ない
楽観ロック
更新の競合が起きた場合は、最初のものを採用し、それ以降のものは破棄する
そもそもロックはかけていない
etc.
#??
なんでこういう感じの階層で説明されるのかわからない
code:aaa
排他ロック
悲観ロック
楽観ロック
この2つが並列で排他ロックの子という説明に違和感がある
イメージ的には
排他ロックと悲観ロックがすごく関連している概念で
楽観ロックはもはや別の概念な気がする
寧ろ
code:aa
悲観ロック
排他ロック
共有ロック
楽観ロック
のような階層で説明する方が自然なんじゃないのか?
悲観ロックは実際ロックしているので、そのロックの仕方として排他ロックや共有ロックのような選択肢がありうる
楽観ロックはそもそもろっくしていない
mrsekut.iconの知識不足な気もするのでいったんよく見る上の方の階層を採用してノートに残している
共有ロック