格言(なにが?)

「今週の格言」は日曜日前後に更新している…という時もあった。
やっと「隔週の格言」あたりにペースを取り戻せたか。

[ホームページ]


今週の格言

2006-05-15
tragic lock (悲劇的ロック)

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

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

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

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

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

初出「Phinlodaの裏の裏ページ」、2006-04-26。


先週までの格言


(C) 1996-2002 Phinloda, All rights reserved
格言の作者の承諾を得て転載させていただいている場合があります。
無断でこのページへのリンクを貼ることを承諾します。問い合わせは不要です。
内容は予告なく変更することがあります。