« 昨日は山手線が止まって大変だったらしいが | トップページ | 昨日の帰宅時の電車でとんでもないことがっ »

今日の格言: tragic lock (悲劇的ロック)

プロセスRがプロセスJにアクセスしようとしたが、プロセスJがいつまでたっても応答しない。プロセスRはタイムアウトになったために、例外を発生させて自らを終了させてしまった。

プロセスJが長時間の処理から返ってきたら、待っているはずのプロセスRが横で死んでいる。話が違う。プロセスRがいないと生きていても仕方がないので、プロセスJも例外を発生させて自らを終了させてしまう。

プロセスRとプロセスJの親プロセス(誰?)はその後仲良くなったそうだ。

----

悲観的ロック (pessimistic lock) は、処理の間リソースにロックをかけ続ける。その間、他のプロセスはロック解除を待つため、非効率的だが、ロックをかけているプロセスは処理中にリソースが変更されないことが保証される。これに対して楽観的ロック (optimistic lock) は、処理をリードする間はロックをかけず、更新の直前にロックをかける。必要なら他のプロセスがロックをかけて共有リソースを変更することができるが、変更しようとした寸前に他のプロセスに変更されてしまい、予期せぬ結果になることがある。

tragic は tragedy (悲劇) の形容詞。ロミオとジュリエットはシェイクスピアの四大悲劇にも入れてもらえなかったというそれ自体悲劇な悲劇だが、ウエストサイド物語などにリメイクされたりして有名なので説明のしようがない。なぜロミオなのと言われても困る。

--

表ページに「今週の格言」というコーナーがあるのだが、更新の方法がよく分からなくなったのでこっちに書いてみた。そのうち表に転載したい。

|

« 昨日は山手線が止まって大変だったらしいが | トップページ | 昨日の帰宅時の電車でとんでもないことがっ »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/3035/9768309

この記事へのトラックバック一覧です: 今日の格言: tragic lock (悲劇的ロック):

« 昨日は山手線が止まって大変だったらしいが | トップページ | 昨日の帰宅時の電車でとんでもないことがっ »