Rubyについて Part 31
■ このスレッドは過去ログ倉庫に格納されています
0795デフォルトの名無しさん
2008/07/02(水) 00:58:13Clsが未定義のとき、評価される式に定数Clsを含められない、という縛りが
あるので、ancestorsの中を調べるときにやっぱり困るという問題が……。
>>792
をを、そういうモノが。Benchmarkで軽く評価してみますた。すると、何とも
微妙な結果が。まぁ、1処理に1回くらいしか動かない部分で100万分の1秒以下
の差なんてゴミみたいなもんなのですが。
require 'benchmark'
n = 1000000
Benchmark.bm do |x|
x.report("null ") { n.times do; end }
x.report("const_defined?(1)") { n.times do; Object.const_defined?(:Cls); end }
x.report("defined?(1) ") { n.times do; defined? Cls; end }
end
class Cls; end
Benchmark.bm do |x|
x.report("const_defined?(2)") { n.times do; Object.const_defined?(:Cls); end }
x.report("defined?(2) ") { n.times do; defined? Cls; end }
end
user system total real
null 0.078000 0.000000 0.078000 ( 0.078000)
const_defined?(1) 0.282000 0.000000 0.282000 ( 0.281000)
defined?(1) 0.171000 0.000000 0.171000 ( 0.172000)
user system total real
const_defined?(2) 0.250000 0.000000 0.250000 ( 0.250000)
defined?(2) 0.625000 0.000000 0.625000 ( 0.625000)
■ このスレッドは過去ログ倉庫に格納されています