From: matz@... (Yukihiro Matsumoto) Date: 1999-05-31T16:02:22+09:00 Subject: [ruby-dev:7033] Re: IOError in threading まつもと ゆきひろです In message "[ruby-dev:7003] Re: IOError in threading" on 99/05/27, Masaki Fukushima writes: |問題1 | Linuxのstraceで見ると、io.closeを呼んでも、closeシステムコール | が呼ばれない。 わかりました. * rb_thread_fd_close(fd)で同時に待ちに入っているスレッドに 例外を飛ばす * 例外を受けたスレッドがmain_threadだと他のスレッド全部を 終了させにかかる * 実際のclose(2)が呼ばれる前に全体が終了してしまう というものです.で,これは最初に例外を飛ばすタイミングが速す ぎるのが原因なので,これを実際にcloseしてから例外を発生させ るように変更しました.うまくclose(2)がa呼ばれるようになった ようです. どうもありがとうございました. まつもと ゆきひろ /:|}