[#40961] [Bug #3137] complex.rb changes exceptions of Math — Yusuke Endoh <redmine@...>

Bug #3137: complex.rb changes exceptions of Math

15 messages 2010/04/12
[#40967] Re: [Bug #3137] complex.rb changes exceptions of Math — keiju@... (石塚圭樹) 2010/04/13

けいじゅ@いしつかです.

[#41038] Windows と DL が使用条件の libffi — Aaron Patterson <aaron.patterson@...>

こんにちは!アーロンです。

17 messages 2010/04/22
[#41039] Re: Windows と DL が使用条件の libffi — "U.Nakamura" <usa@...> 2010/04/22

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

[#41040] Re: Windows と DL が使用条件の libffi — "NARUSE, Yui" <naruse@...> 2010/04/22

成瀬です。

[#41059] Re: Windows と DL が使用条件の libffi — Aaron Patterson <aaron.patterson@...> 2010/04/26

2010/4/21 NARUSE, Yui <naruse@airemix.jp>:

[#41060] Re: Windows と DL が使用条件の libffi — Yugui <yugui@...> 2010/04/26

2010/4/26 Aaron Patterson <aaron.patterson@gmail.com>:

[#41067] [Feature #3203] LazySweepGC patch — Narihiro Nakamura <redmine@...>

Feature #3203: LazySweepGC patch

15 messages 2010/04/26
[#41069] Re: [Feature #3203] LazySweepGC patch — Yusuke ENDOH <mame@...> 2010/04/27

遠藤です。

[#41104] Rails3 M17N — Yukihiro Matsumoto <matz@...>

まつもと ゆきひろです

29 messages 2010/04/30
[#41111] Re: Rails3 M17N — Urabe Shyouhei <shyouhei@...> 2010/04/30

Yukihiro Matsumoto =E3=81=95=E3=82=93=E3=81=AF=E6=9B=B8=E3=81=8D=E3=81=BE=

[#41113] Re: Rails3 M17N — Yukihiro Matsumoto <matz@...> 2010/04/30

まつもと ゆきひろです

[ruby-dev:41011] [Bug #3170] timeout() does'nt work with Non Integer/Float Argument

From: Kyosuke MOROHASHI <redmine@...>
Date: 2010-04-19 02:01:30 UTC
List: ruby-dev #41011
Bug #3170: timeout() does'nt work with Non Integer/Float Argument
http://redmine.ruby-lang.org/issues/show/3170

起票者: Kyosuke MOROHASHI
ステータス: Open, 優先度: Normal
カテゴリ: lib
ruby -v: ruby 1.8.7 (2009-12-24 patchlevel 248) [i686-darwin9]

Ruby 1.8.7p248で、timeout()の引数にIntegerやFloat以外のオブジェクトを渡すと、
何も起こらないままタイムアウトが効かなくなります。

あまり機会はありませんが、

- Rational(mathnをrequireしたあと、1/2秒など指定すると困る)や、
- ActiveSupport::Duration(10.secondsなどで返る)

でタイムアウト秒を指定する場合にはまってしまいます。

原因は、timeout()で作られる監視用スレッドyにて、sleepがTypeErrorを起こし、yがすぐに
終了してしまうのが原因だと思っています。

数値に変換できそうなオブジェクトの場合は、to_i/to_fしてsleepする挙動か、
もしくは明示的に例外があがるようになれば助かりますが、いかがでしょうか。

$ ruby -v -rtimeout -rrational -e 'timeout(Rational(1,2)){ sleep 3; p "slept" }'
ruby 1.8.7 (2009-12-24 patchlevel 248) [i686-darwin9]
"slept"

$ ruby19 -v -rtimeout -rrational -e 'timeout(Rational(1,2)){ sleep 3; p "slept!" }'
ruby 1.9.2dev (2009-09-25 trunk 25091) [i386-darwin9]
lib/rational.rb is deprecated
-e:1:in `sleep': execution expired (Timeout::Error)
        from -e:1:in `block in <main>'
        from -e:1:in `<main>'


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

In This Thread

Prev Next