From: Tomoyuki Chikanaga Date: 2011-06-23T23:28:57+09:00 Subject: [ruby-dev:43885] [Ruby 1.9 - Bug #4072][Closed] dRubyで作成したサーバプログラムがsleepしていてもexitしてしまう Issue #4072 has been updated by Tomoyuki Chikanaga. Category set to core Status changed from Open to Closed これですがおそらく r31482 のあたりで native_cond_wait() が EINTR でリトライするようになったので 直っているのではないかと思います。 手元では ruby 1.9.2dev (2010-05-10 revision 27709) で再現していたのが trunk では起きなくなっていました。 ruby_1_9_2 にもマージ済みなので 1.9.2-head でも同じではないかと思います(未確認ですが)。 というわけでcloseさせて頂きます。もし再現するようだったらreopenさせてください。 ---------------------------------------- Bug #4072: dRubyで作成したサーバプログラムがsleepしていてもexitしてしまう http://redmine.ruby-lang.org/issues/4072 Author: 三村 益隆 Status: Closed Priority: Normal Assignee: Category: core Target version: 1.9.2 ruby -v: ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.4.0] =begin ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.4.0]にて、 dRubyを以下のようなserverとclient作成し、server->clientを実行すると、 serverプログラムが例外の表示もなくexitします。 ruby 1.9.3dev (2010-11-19 trunk 29830) [x86_64-darwin10.5.0]でも同様に発生します。 ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10.4.0]では、 exitされないことを確認しております。 https://gist.github.com/706260 * serverプログラム require 'drb' class Hello def hello(message) puts message end end begin DRb.start_service('druby://:12346', Hello.new) puts DRb.uri sleep rescue Object, SystemExit=> e p e.backtrace raise e rescue => e puts e end * clientプログラム require 'drb' d = DRbObject.new_with_uri('druby://m-mimura-4.local:12346') d.hello "message" =end -- http://redmine.ruby-lang.org