[#42564] [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案 — Makoto Kishimoto <redmine@...>

Feature #4043: =E3=82=B0=E3=83=AD=E3=83=BC=E3=83=90=E3=83=AB=E9=96=A2=E6=95=

15 messages 2010/11/11
[#42774] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案 — Yukihiro Matsumoto <matz@...> 2010/12/16

まつもと ゆきひろです

[#42834] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案 — "KISHIMOTO, Makoto" <ksmakoto@...4u.or.jp> 2010/12/21

きしもとです

[#42835] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案 — Yukihiro Matsumoto <matz@...> 2010/12/21

まつもと ゆきひろです

[#42838] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案 — "KISHIMOTO, Makoto" <ksmakoto@...4u.or.jp> 2010/12/21

きしもとです

[#42845] Re: [Ruby 1.9-Feature#4043][Open] グローバル関数current_classの提案 — Yukihiro Matsumoto <matz@...> 2010/12/21

まつもと ゆきひろです

[#42577] Rubyのバグレポートのガイドライン — "Shota Fukumori (sora_h)" <sorah@...>

sora_hです。

11 messages 2010/11/15
[#42588] Re: Rubyのバグレポートのガイドライン — Yugui <yugui@...> 2010/11/18

2010/11/15 Shota Fukumori (sora_h) <sorah@tubusu.net>:

[#42638] Enumerable#categorize — Tanaka Akira <akr@...>

enumerable から hash を生成するメソッドとして

25 messages 2010/11/27
[#42643] Re: Enumerable#categorize — Yukihiro Matsumoto <matz@...> 2010/11/27

まつもと ゆきひろです

[ruby-dev:42612] [Ruby 1.9-Bug#4072] dRubyで作成したサーバプログラムがsleepしていてもexitしてしまう

From: Tomoyuki Chikanaga <redmine@...>
Date: 2010-11-20 15:13:29 UTC
List: ruby-dev #42612
チケット #4072 が更新されました。 (by Tomoyuki Chikanaga)


近永と申します。

trunk で追試してみて発生しないなーと思っていたのですが、
手元で #4027 のチケットに添付したシグナルハンドラ絡みのパッチを適用していたためでした。
パッチを巻き戻してみたところ再現しました。
ruby -v は ruby 1.9.3dev (2010-11-19 trunk 29831) [x86_64-darwin10.5.0] です。

message メソッド実行後に メインスレッドが sleep から抜けてきているようです。
必ず起きるというわけではなくて、何回かは message を呼べることもありました。
なお sleep のかわりに DRb.thread.join にすれば大丈夫でした。

ruby に -d オプションをつけて実行してみたところ、DRbMessage#send_reply で Errno::EPIPE が
発生している時に sleep から抜けているようです。
おそらく SIGPIPE のシグナルハンドラ(sigpipe) がメインスレッドで実行されてしまった時に
pthread_cond_wait から戻り値=0 errno=EINTR で抜けています。
シグナルハンドラが必ずタイマースレッドで実行されるようになれば直ると思います。

しかし前述のパッチをあてた版では逆に message を実行後に SIGINT や SIGTERM で終了しなくなって
しまっているのでまだ問題がありそうです。
----------------------------------------
http://redmine.ruby-lang.org/issues/show/4072

----------------------------------------
http://redmine.ruby-lang.org

In This Thread

Prev Next