[#34647] fork 不可能な環境での test_argv0_noarg — wanabe <s.wanabe@...>

ワナベと申します。

13 messages 2008/05/11
[#34667] Re: fork 不可能な環境での test_argv0_noarg — Yukihiro Matsumoto <matz@...> 2008/05/13

まつもと ゆきひろです

[#34742] Ruby 1.8.7-preview3 has been released — "Akinori MUSHA" <knu@...>

 Ruby 1.8.7-preview3 をリリースしました。

14 messages 2008/05/18
[#34744] Re: [ruby-list:44957] Ruby 1.8.7-preview3 has been released — Takahiro Kambe <taca@...> 2008/05/19

お疲れ様です。

[#34800] Windows2000上でtrunkがビルドできない — KIMURA Koichi <kimura.koichi@...>

木村です。

18 messages 2008/05/22
[#34801] Re: Windows2000上でtrunkがビルドできない — "U.Nakamura" <usa@...> 2008/05/22

こんにちは、なかむら(う)です。

[#34824] Re: Windows2000上でtrunkがビルドできない — KIMURA Koichi <kimura.koichi@...> 2008/05/23

木村です。

[#34850] Re: Windows2000上でtrunkがビルドできない — KIMURA Koichi <kimura.koichi@...> 2008/05/26

木村です。

[#34854] Re: Windows2000上でtrunkがビルドできない — "U.Nakamura" <usa@...> 2008/05/26

こんにちは、なかむら(う)です。

[#34889] Ruby 1.8.7-preview4 test-all failed in OpenSSL::TestSSL — Nobuhiro IMAI <nov@...>

いまいです。

10 messages 2008/05/29

[ruby-dev:34790] Re: net/imap uses Thread#raise

From: "Shugo Maeda" <shugo@...>
Date: 2008-05-21 09:04:45 UTC
List: ruby-dev #34790
前田です。

2008/05/19 0:21 Tanaka Akira <akr@fsij.org>:
> で、思うのですが、まずそもそも Thread#raise を使うのはよろし
> くありません。しばらく前に、[ruby-talk:292398] で始まるスレッ
> ドがあり、私も何通か書きましたが、どのタイミングで起こるかわ
> からない例外は対処が困難だと思います。もしうまく対処できると
> いうのであれば、ぜひ方法を教えてください。
>
> 私としては、Thread#raise を使うのは止めて、例外はそのままス
> レッドを終了させるようにし、disconnect あたりで join するこ
> とによりクライアント側に例外を移すのが良いのではないかと思い
> ます。

現状の問題についてはおっしゃる通りだと思いますが、上記の対応では不十分な
気がします。
リクエストを発行したスレッドがレスポンス待ちになっている時に、受信スレッド
で例外が発生したとすると、上記の対応ではリクエストを発行したスレッド
がブロックしてしまう(のでdisconnectまで行かない)のではないかと思います。

例外の発生をThread#raiseではなく@response_arrival.broadcastで
通知すると上手く行くのではないかと思いますが、ちょっと修正に時間がかかりそうです。
他に影響があるので、とりあえずテストをスキップするようにした方がよいでしょうか。
# 修正するのを忘れそうなのでRedmineにチケットを登録しておきたいところですが、
# もう使えるんですっけ。

-- 
Shugo Maeda

In This Thread