基本情報暗記無料で始める

専有ロックとは?せんゆうロック

専有ロックとは、データを書き換えるトランザクションが掛けるロック。同じ資源に対して他のどのロックとも両立せず、共有ロック(データを読むだけの処理が掛け、読む処理どうしなら同時に掛けられるロック)が既に掛かっている行には掛けられないため、保持できるのは常に1つのトランザクションだけになる。排他ロックとも呼ばれ、更新の途中の値を他から読ませないためにある。

最終更新:2026-10-09

試験情報

基本情報技術者試験の過去問では1回出題され、ほかに1問の解説で触れられています(2016年度〜2019年度)。

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

別名:排他ロック、占有ロック、Xロック、exclusive lock

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

背景

同じ在庫の数量を2つの処理が同時に読み、それぞれ1を引いて書き戻すと、2回引いたはずが1回分しか減らない。読んでから書くまでの間に他が割り込めることが原因なので、書く側は読んだ時点から書き終わるまで、その資源を独り占めする必要がある。専有ロックはこの独り占めを宣言する仕組みで、複数の処理の待ち合いが循環するとデッドロックになる。

具体例

MySQLで SELECT … FOR UPDATE(更新するつもりで行を読み出せ、という意味)と書くと、読み出した行に専有ロックが掛かる。在庫数を確認して引き算し、書き戻すまでの間、他のトランザクションは同じ行を更新できず、解放を待つことになる。

試験での引っ掛け

共有ロックが掛かっている行にも掛けられない点を落としやすい。掛ける単位(ロック粒度)を行ではなく表にすると、待たされる範囲が広がって同時実行性は落ちるが、管理する情報の量は減るという交換関係も問われる。

関連用語

出た過去問

問題文で直接問われたものと、解説の中で触れられたものが含まれます。

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

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

試験での特徴
  • 試験では1回出題(2016年度〜2019年度)
  • 分野:テクノロジ系
  • 共有ロックが掛かっている行にも掛けられない点を落としやすい。