summaryrefslogtreecommitdiff
path: root/benchmark/bm_io_select2.rb
blob: 7b167af7746ce92c5f5177f5f0fa6378756bef41 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# IO.select performance. worst case of single fd.

ios = []
nr = 1000000
max = Process.getrlimit(Process::RLIMIT_NOFILE)[0]
puts "max fd: #{max} (results not apparent with <= 1024 max fd)"

((max / 2) - 10).times do
  ios.concat IO.pipe
end

last = [ ios[-1] ]
puts "last IO: #{last[0].inspect}"

nr.times do
  IO.select nil, last
end