応用情報暗記無料で始める

共有ロックとは?きょうゆうロック

共有ロックとは、データを読むために掛けるロックで、同じ資源に対して複数のトランザクションが同時に掛けられる一方、更新のための専有ロックとは両立しない。読み手どうしを待たせず、読んでいる最中の書換えだけを止めることで、参照の多い業務でも並行度を落とさずに整合性を保てるようにする仕組みである。

最終更新:2026-10-06

試験情報

応用情報技術者試験の過去問では1回出題されています。

応用情報技術者試験の頻出用語/テクノロジ系

別名:読取りロック、Sロック、shared lock

この語が出る過去問を解く →

背景

すべてのアクセスを排他にすれば整合性は守れるが、参照だけの処理まで1件ずつ順番待ちになり、同時利用者が増えるほど待ち行列が伸びる。読み手どうしは互いのデータを壊さないのだから待たせる理由がない、という観察から、ロックを読み用と書き用の2種類に分ける設計が生まれた。応用情報では両立表を読ませる問題として出る。

具体例

多数の店舗が在庫参照の画面を同時に開いていても、共有ロックどうしは両立するので待ちは生じない。そこへ棚卸しの更新処理が専有ロックを要求すると、参照側のロックがすべて外れるまで待たされる。PostgreSQLやOracleは、MVCCによってこの読み書きの競合自体を避ける実装をとっている。

試験での引っ掛け

両立表の向きを取り違えないこと。共有×共有は両立し、共有×専有と専有×専有は両立しない。「読むだけだから安全」でもなく、2つのトランザクションが同じ行に共有ロックを掛けたまま双方が専有ロックへ昇格しようとすると、互いに待ち合って昇格デッドロックになる。

関連用語

出た過去問

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では1回出題
  • 分野:テクノロジ系
  • 両立表の向きを取り違えないこと。