[#46102] [ruby-trunk - Feature #6972][Open] 特化命令opt_emptyの追加 — "Glass_saga (Masaki Matsushita)" <glass.saga@...>
5 messages
2012/09/03
[#46105] 拡張ライブラリの質問 — SASADA Koichi <ko1@...>
ささだです.
12 messages
2012/09/04
[#46110] Re: 拡張ライブラリの質問
— "NARUSE, Yui" <naruse@...>
2012/09/05
成瀬です。
[#46112] Re: 拡張ライブラリの質問
— Urabe Shyouhei <shyouhei@...>
2012/09/05
On 09/05/2012 09:52 AM, NARUSE, Yui wrote:
[#46114] Re: 拡張ライブラリの質問
— "NARUSE, Yui" <naruse@...>
2012/09/05
2012年9月5日 11:11 Urabe Shyouhei <[email protected]>:
[#46131] HaikuOS上でruby trunkのbuildが通るようになりました — Takashi Toyoshima <toyoshim@...>
こちらのMLでは初めてご挨拶させて頂きます、とよしまと申します。
7 messages
2012/09/12
[#46132] Re: HaikuOS上でruby trunkのbuildが通るようになりました
— KOSAKI Motohiro <kosaki.motohiro@...>
2012/09/12
> こちらのMLでは初めてご挨拶させて頂きます、とよしまと申します。
[#46159] [ruby-trunk - Feature #7047][Open] Add new C API: rb_newobj_with — "authorNari (Narihiro Nakamura)" <authorNari@...>
9 messages
2012/09/22
[#46162] Re: [ruby-changes:24978] nobu:r37030 (trunk): insns.def: super from at_exit — SASADA Koichi <ko1@...>
2点ほど.
4 messages
2012/09/25
[#46174] [ruby-trunk - Bug #7084][Open] RubyVM::InstructionSequence.compile("1+"*10000 + "1") causes SystemStackError or Segmentation Fault — "mrkn (Kenta Murata)" <muraken@...>
7 messages
2012/09/29
[ruby-dev:46144] [ruby-trunk - Bug #6441] IO.pipe on ENFILE
From:
"nagachika (Tomoyuki Chikanaga)" <nagachika00@...>
Date:
2012-09-19 12:25:51 UTC
List:
ruby-dev #46144
Issue #6441 has been updated by nagachika (Tomoyuki Chikanaga).
どうも IO.pipe で最後に開いた IO 2つは GC.start で手動で GC を実行しても回収されないみたいです。
$ ruby -ve 'GC.start;loop{IO.pipe.tap{|i|p i}.clear;GC.start}'"
ruby 2.0.0dev (2012-08-08 trunk 36663) [x86_64-darwin10.8.0]
[#<IO:fd 5>, #<IO:fd 6>]
[#<IO:fd 7>, #<IO:fd 8>]
[#<IO:fd 5>, #<IO:fd 6>]
[#<IO:fd 7>, #<IO:fd 8>]
[#<IO:fd 5>, #<IO:fd 6>]
[#<IO:fd 7>, #<IO:fd 8>]
...(以下繰り返し)
なので ulimit -n 9 だと動き続けることができるようでした。
はて、なんでしょう。
----------------------------------------
Bug #6441: IO.pipe on ENFILE
https://bugs.ruby-lang.org/issues/6441#change-29533
Author: naruse (Yui NARUSE)
Status: Assigned
Priority: Normal
Assignee: authorNari (Narihiro Nakamura)
Category:
Target version:
ruby -v: ruby 2.0.0dev (2012-05-16 trunk 35659) [x86_64-netbsd6.99.5]
今の Ruby は open(2) などで、errno=ENFILE が発生した場合、
すなわち fd を使いきっている場合には、rb_gc() を呼び、IO オブジェクトを GC して、
fd が解放されないか試み、それでもダメだったら諦めるとしています。
しかし、IO.pipe の場合はこれに失敗することがあります。
これは、lazy sweep が上記の目的のため T_FILE の場合は直ちに sweep することにしている所、
pipe の場合はその例外にあたらないからです。
--
http://bugs.ruby-lang.org/