2相ロッキングプロトコルとは?
2相ロッキングプロトコルとは、ロックを獲得していく成長相と、解放していく縮退相を分け、いったん解放を始めたら新たなロックを獲得しないという規約。これを守れば直列化可能性が保証される。
ITサービスマネージャ試験の過去問では1回出題されています。
にそうロッキングプロトコル
2相ロッキングプロトコルの意味
ロックを獲得していく成長相と、解放していく縮退相を分け、いったん解放を始めたら新たなロックを獲得しないという規約。これを守れば直列化可能性が保証される。
2相ロッキングプロトコルの具体例
必要なロックをすべて取ってから処理し、その後まとめて解放する。
2相ロッキングプロトコルは試験でどう引っ掛けられる?
2相ロックは直列化可能性を保証するが、デッドロックを防ぐわけではない。またコミット時まで解放を遅らせるものは厳格2相ロックと呼び、カスケードアボートを防げる。
2相ロッキングプロトコルと関連する用語
2相ロッキングプロトコルが出た過去問
2相ロッキングプロトコルに従うトランザクションで発生する可能性のある現象はどれか。
正解:デッドロック
要点:2相ロックは直列化可能性を保証するが、デッドロックは防げない
2相ロッキングプロトコルは、ロックを取得する成長相と解放する縮退相に分け、いったん解放を始めたら新たなロックを取らない方式である。これにより直列化可能性が保証され、ダーティリードやロストアップデート、ノンリピータブルリードといった不整合は防げる。しかし複数トランザクションが互いの保持するロックを待ち合う状態は避けられず、デッドロックは発生し得る。
出典:令和5年度 春期 ITサービスマネージャ試験 am2 問23(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。