From: Tanaka Akira Date: 2008-05-16T01:20:38+09:00 Subject: [ruby-dev:34724] 1.8 NoMemoryError 1.8 で以下のように NoMemoryError が出るような配列確保を繰り 返し行うと、2回めでプロセスが中断します。 % limit addressspace 300m % ./ruby -ve ' 4.times {|i| p i begin Array.new(1 << 28) rescue NoMemoryError p $! end }' ruby 1.8.7 (2008-05-15 patchlevel 5000) [i686-linux] 0 # 1 [FATAL] failed to allocate memory zsh: exit 1 ./ruby -ve 1.9 ではそういう中断は起こりません。 % ./ruby -ve ' 4.times {|i| p i begin Array.new(1 << 28) rescue NoMemoryError p $! end }' ruby 1.9.0 (2008-05-14 revision 16414) [i686-linux] 0 # 1 # 2 # 3 # rubyspec を LP64 なマシンで動かすと (おそらく) これが原因で 途中で中断しちゃうんですが、1.8 の挙動は意図されたものでしょ うか。 -- [田中 哲][たなか あきら][Tanaka Akira]