From: Yukihiro Matsumoto Date: 2009-08-19T16:00:28+09:00 Subject: [ruby-dev:39127] Re: [Bug #1952] cannot stop with Ctrl+C まつもと ゆきひろです In message "Re: [ruby-dev:39126] Re: [Bug #1952] cannot stop with Ctrl+C" on Wed, 19 Aug 2009 15:47:18 +0900, "U.Nakamura" writes: |おそらく、(3)のTAG_FATALが忘れ去られるのが問題で、外側のrescue |節に入らないようにしないといけないのではないかと思います。 |ensure節でraiseするとき、現在TAG_FATALだったらTAG_RAISEでなく |TAG_FATALで飛ぶべきなんでしょうかねえ。難しい。 うーん、ensureでraiseしたり、その外でrescueでretryしたりして いるわけですから、無限ループそのものは「意図通り」なのではな いでしょうか。むしろ、raiseがTAG_FAGALで飛ぶ方が気持ちが悪い です。 これはmain threadが他スレッド待ちの間に割り込みが効かない方を 直すべきではないでしょうか。