[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ロック (lock)

pointこの用語のポイント

point確保するよ

point他の人に触らせないよ

point誰かが使ってるよ

pointあるいは、一時的に使えない状態にすることだよ

スポンサーリンク

簡単に書くよ

ロック (lock)とは

「これ今、俺が使ってるからさ。他の人は触らないでね」のこと。
あるいは

一時的に使えない状態にすること
です。

image piyo

詳しく書くよ

まずは「これ今、俺が使ってるからさ。他の人は触らないでね」を意味するロックについて説明します。

例えばの話ですが、ある好事家の屋敷に有名な画家たちが集められました。
好事家は有名な画家たちに合作で1つの絵を描かせようと考えたのです。

きっと素晴らしい絵が完成するだろう。ぐふふふふ。

と思ったのですが、順調には行きませんでした。
画家たちは、みんながみんな、好き勝手に描き始めたのです。
そのため絵はメチャクチャになってしまいました。

テーマはバラバラです。
色使いもバラバラです。
構図もバラバラです。
どこの子供のお絵描きだよ。

そこで好事家は妙案を考えました。

合作ではあるものの、1人ずつ順番に描かせたのです。
ある1人が描いているときは、他の人は手出し無用です。
見てもいいけど筆を乗せちゃダメです。

その結果、それなりにまとまりのある絵が完成しました。
めでたしめでたし。

この話を踏まえて「今は誰かが使っているから触っちゃダメだよ!」な状態、もしくは、そのような状態にするのが「ロック」です。
1つの物に複数人が同時に手を入れると、こんがらがっちゃいます。
誰かが使っている間はロックすることで、それを避けられます。

ロック

ファイルデータベースも基本的には同じです。
いろんな人が同時に触ると、メチャクチャになる場合があります。
ロックすることで、おかしなことにならないように努めるのです。

実際のデータで考えてみましょう。

例えば、ピヨ太君が「ミカンの在庫:0」なデータを見つけたとします。
ミカンを食べたいピヨ太君はミカンを買いに行きました。

ロック2

ピヨ太君がミカンを買いに行っている間にピヨ子さんも「ミカンの在庫:0」なデータを見つけました。
ミカンを食べたいピヨ子さんはミカンを買いに行きました。

ロック3

ミカンを買ってきたピヨ太君は「ミカンの在庫:1」にしました。
最初に確認したときは在庫切れでした。
自分が1つ買ってきたから在庫は1になるはずです。

ロック4

後からミカンを買ってきたピヨ子さんも「ミカンの在庫:1」にしました。
最初に確認したときは在庫切れでした。
自分が1つ買ってきたから在庫は1になるはずです。

ロック5

ピヨ太君もピヨ子さんも自分の働きに満足しています。

ですが、ちょっと待ってください。
データ上は「ミカンの在庫:1」ですが、実際にはピヨ太君が買ってきたミカンとピヨ子さんが買ってきたミカンの合計2つがあります。
おやおや?
おかしなことになってしまいましたよ。

ロック6

複数人で1つのデータを触ることで、このようなことが起こり得るのです。
それを防ぐ目的で、データを更新する際はロックします。

先の例で言えば、ピヨ太君がミカンを買いに行く前に「ミカンの在庫:0」のデータをロックしちゃうのです。

ロック7

そうすると、ピヨ子さんは「あぁ、今は何かやってるんだな」と分かります。

ロック8

その後、ミカンを買ってきたピヨ太君は、ロックを解除します。

ロック9

そうすると、ピヨ子さんが目にするデータは「ミカンの在庫:1」です。

ロック10

これならおかしいところはないですね。
めでたしめでたし。

ロックは「排他制御」と呼ばれる仕組みの一種です。
主にファイルやデータベースを更新する際に使われます。

以上が「これ今、俺が使ってるからさ。他の人は触らないでね」を意味するロックの説明です。

次に「一時的に使えない状態にすること」を意味するロックについて説明します。

こちらのロックは、単純に「鍵をかける」を意味するロックです。
鍵をかけると、鍵を持っていない人は使えませんよね。
よって、意味は「使えない状態にする」あるいは、さらに一歩進めて「無効にする」となります。

ロック11

以上が「一時的に使えない状態にすること」を意味するロックの説明です。

ちなみに、ロックを解除することは「アンロック」と言います。
せっかくなので併せて覚えてあげてください。

image piyo2

一言でまとめるよ

まぁ「ロック」って単語が出てきたら「誰かが使ってる、もしくは、一時的に無効になっているんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク