test.rb
array = [] loop do begin array.push(open("test.txt")) rescue puts $! puts "max:" + array.size.to_s break end end array.each do |f| f.close end
実行結果
Too many open files - test.txt max:509
この509はどこから来ているんだろう。
OSの制限?
どこかで設定できる?
追記:
Mac OSX(10.5.5)でも試してみた。
Too many open files - test.txt max:253
OSXのVMWare上のWindows XPでは509だった。
OSによって制限値が違うようだ。