読者です 読者をやめる 読者になる 読者になる

cgi/html.rb からevalを取り除いた

Ruby

以前から中田さんから言われていた、evalを取り除きたいという話、
ようやく取り込んだのでベンチマークしてみました。
 

% ruby -rcgi -rbenchmark -e 'puts Benchmark.bm{|x|x.report(:after){300000.times{CGI.new("html5")}}}' </dev/null

こんな感じでやってみました。
すると、

user system total real
改良後 14.640000 0.740000 15.380000 ( 15.447330)
改良後 14.200000 0.740000 14.940000 ( 15.004875)

ちょっとだけ速くなっています。
 
しかも、使用メモリが
改良前は 11.0MB だったの対し、
改良後は 7.8MB でした。
(メモリ量ってどうやって測ればいいかわかんないから、アクティビティモニタで。)
 
メモリの方は、かなりスリムになりました。