共有ロックとは?
共有ロックとは、データを読むために掛けるロック。同じデータに複数のトランザクションが同時に掛けられるが、専有ロックとは両立しない。
システムアーキテクト試験の過去問では1回出題されています。
きょうゆうロック
共有ロックの意味
データを読むために掛けるロック。同じデータに複数のトランザクションが同時に掛けられるが、専有ロックとは両立しない。
共有ロックの具体例
参照だけの処理どうしは互いに待たされない。
共有ロックは試験でどう引っ掛けられる?
両立表の向きを取り違えないこと。共有×共有は両立、共有×専有と専有×専有は両立しない。また「読むだけだから安全」ではなく、2つのトランザクションが同じ行に共有ロックを掛けたまま双方が専有ロックへ昇格しようとすると互いに待ち合ってデッドロックになる(昇格デッドロック)。
共有ロックと関連する用語
共有ロックが出た過去問
t1~t10の時刻でスケジュールされたトランザクションT1~T4がある。時刻t10でT1がcommitを発行する直前の、トランザクションの待ちグラフを作成した。…
正解:T2
要点:待ちグラフは各資源のロック保持者と待機者の関係から決まる
各資源のロック状態を時系列で追うと、AはT1とT4が共有ロック、BはT2とT3が共有ロック、CはT1とT2が共有ロックを保持する。その後、T4のupdate(B)はT2とT3を待ち、T2のupdate(C)はT1を待ち、T3のupdate(A)はT1とT4を待つ。待ちの矢印が出ておらず二つ流入する頂点がT1(図のd)、そこへ向かう矢印を1本だけ出しつつ1本受ける頂点がT2であり、aはT2となる。
出典:令和4年度 春期 システムアーキテクト試験 am2 問24(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。