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

In message "[ruby-dev:43513] Re: draft schedule of Ruby 1.9.3"
    on May.10,2011 19:07:57, <kosaki.motohiro / gmail.com> wrote:
>  10) Failure:
> test_wait_for_invalid_fd(TestWaitForSingleFD)
> [c:/ruby/trunk/test/-ext-/wait_for_single_fd/test_wait_for_single_fd.rb:27
> ]:
> Errno::EBADF expected but nothing was raised.
> 
> これは、僕が最近いれたEricの io/wait テストなんですが、Windowsでの正しい動作が不明なので usa さんの見解が欲しい。

えーと、テストを見ると、closeされたfdに対してwaitしたら例外が
起きてほしい?

そもそもselect(2)はcloseされたfdを渡されてもEBADFにはなんない
ですよね? 違いましたっけ?
そういう仕様がお望みならselect_single()あたりをそういう挙動に
変えないといかんのではないかと思いますけど...

なお、poll(2)版も自前でPOLLNVALをEBADFに変換した上でRuby例外
にしてるようですが、どうせ例外投げるならIOErrorの方がいいんじ
ゃないかと私は思います。


それでは。
-- 
U.Nakamura <usa / garbagecollect.jp>