Ruby 代码片段运行时间统计

Benchmark 位于 Ruby 的标准库里边,因此使用时需要 require。
该模块用来测量和报告执行 Ruby 代码所用时间。

示例代码

例子是测试 for、times、each 循环 1 亿遍的时间

require 'benchmark'

# 输出列宽
col_width = 10
Benchmark.bm(col_width) do |bm|
  bm.report('for') do
    for i in 0...100_000_000
      a = 1
    end
  end
  bm.report('times') do
    100_000_000.times do
      b = 1
    end
  end
  bm.report('each') do
    (0...100_000_000).each do
      c = 1
    end
  end
end

输出结果

                 user     system      total        real
for          3.093000   0.000000   3.093000 (  3.085236)
times        2.813000   0.000000   2.813000 (  2.819954)
each         2.797000   0.000000   2.797000 (  2.800927)
posted @ 2021-11-20 00:49  linying1991  阅读(183)  评论(0编辑  收藏  举报