お世話になっております。 A.中村です。

On Wed, 13 Mar 2002 10:41:56 +0900
shudo / computer.org wrote:

> > ruby --kamikaze 300  5分で自爆する等で、その間デットロックしたら自ら時限装置> Ruby 側でそういう機能を持つよりも、別にツールを用意して
>   kamikaze -t 300s ruby ...

それって、rubyからkamikazeへ、情報を伝える手段が必要ですよね。

つまり、情報を伝える経路と、
「そもそも情報が生じたかどうかを自力で把握する手段」とが
必要ですよね。

プロセスであるからにはその内部には他人は原則立ち入れないっすよね
(とゆーかその原則を破るための仕組を構築する手間とのトレードオフかな)。
が、デッドロックしちゃったら、自分から率先して情報を出すという挙動を
"実施"することが出来ない、のでは?

>   Kazuyuki Shudo	shudo / computer.org	http://www.shudo.net/

今回の話題は、"プロセス分けちゃって大丈夫なのかな?"と思ったりしました。
#あれれ? あのShudoさんですよね? 違ったらごめんなさい。

別プログラムkamikazeへ、緊密に情報を伝えるような、仕組が必要ですよね。
なんか大変そうな気が。

(拡張)ライブラリで書いちゃってrequireして動かす、とかのほうが
まだ良いような気がしました。
で実装はたとえば、native thread回してruby側threadを定期的に監視し、
すべてのruby threadがtimeout時間以上の長きにわたって止ってたら死罪、
とか?
#出来るんかな?

で、そこまでやる(できる)んならば、「デッドロック(?)してるかどーかを
調べる」手間に比べればほんのわずかの手間で、rubyのプロセス:-Pを
落せるんですよねえ?
じゃあ「調べる」だけを内部(thread?)でやって「落す」を外部プロセスに頼る
よりも、「落す」ところまで自分(ruby(のライブラリ)の中)でやっちゃえば
いいのではないか、と思いました。


って、そういう話題でなかったら御免っす。