基准测试占用一个块并返回时间:
http://ruby-doc.org/stdlib-1.9.3/libdoc/benchmark/rdoc/Benchmark.html
require 'benchmark'
puts Benchmark.measure { "a"*1_000_000 }
如果要对某个操作进行基准测试并同时获得返回值和耗时怎么办?
或者,换句话说,闭包可以修改传递给它的对象吗?
最佳答案
闭包可以在其范围内修改对象,如下所示:
require 'benchmark'
a = nil
puts Benchmark.measure { a = "a" * 1_000_000 }
puts a.size
# => 0.000000 0.000000 0.000000 ( 0.004865)
# => 1000000
关于ruby - 对返回值的 ruby 操作进行基准测试,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8200257/