尝试使用 Ruby 和 gem ruby-prof 来分析“1+1”和“1x2”之间的运行时差异。
安装 gem 并将一些似乎可以工作的代码组合在一起,但没有给我我正在寻找的答案,那就是运行时的差异。
这可能吗,如果可以,什么代码会给我这个答案。
此代码似乎有效,但不允许我看到运行时差异。
require 'ruby-prof'
result = RubyProf.profile do
1+1
end
printer = RubyProf::GraphPrinter.new(result)
result = RubyProf.profile do
1x2
end
printer = RubyProf::GraphPrinter.new(result)
在 IRB 中返回这个
irb(main):001:0> require 'ruby-prof'
=> true
irb(main):002:0>
irb(main):003:0* result = RubyProf.profile do
irb(main):004:1* 1+1
irb(main):005:1> end
=> #<RubyProf::Result:0x11050c8>
irb(main):006:0> printer = RubyProf::GraphPrinter.new(result)
=> #<RubyProf::GraphPrinter:0x1332c18 @result=#<RubyProf::Result:0x11050c8>, @ou
tput=nil, @options={}, @thread_times={6793716=>0.01}>
irb(main):007:0>
irb(main):008:0* result = RubyProf.profile do
irb(main):009:1* 1x2
irb(main):010:1> end
SyntaxError: (irb):9: syntax error, unexpected tIDENTIFIER, expecting keyword_en
d
from C:/Ruby193/bin/irb:12:in `<main>'
irb(main):011:0> printer = RubyProf::GraphPrinter.new(result)
=> #<RubyProf::GraphPrinter:0x1124310 @result=#<RubyProf::Result:0x11050c8>, @ou
tput=nil, @options={}, @thread_times={6793716=>0.01}>
irb(main):012:0>