Project1
标题:
有没有什么可以测试一段代码运行效率的方法
[打印本页]
作者:
adahs
时间:
2020-6-1 22:20
标题:
有没有什么可以测试一段代码运行效率的方法
我在论坛搜索到一个,不过感觉不太行
t = Time.now
a = 0
loop do
#测试的代码
a += 1
t2 = Time.now
break if t2 - t > 1/60
end
p a
复制代码
我不添加其他代码测试出来,每1/60秒(即一帧)平均在六七百的样子,可能是每次循环都运行了一次t2=Time.now的缘故,所以比较低,而且多次测试出来的结果跳动还挺大的,这样的话一些不怎么影响效率的代码就对比不出来了。
不知道有没有别的方法测试效率?
作者:
guoxiaomi
时间:
2020-6-1 23:00
执行1000次看看花了多久?
t = Time.now
1000.times do
# 测试代码
end
p Time.now - t
复制代码
作者:
KB.Driver
时间:
2020-6-1 23:51
本帖最后由 KB.Driver 于 2020-6-1 23:55 编辑
在电脑上安装一个ruby解释器
安装完后打开运行(Win+R),输入irb
[pre lang="ruby"]
require 'benchmark'
Benchmark.bmbm do |x|
x.report { # 在这里写想要测试效率的代码 }
end
[/pre]
(, 下载次数: 70)
上传
点击文件名下载附件
一般只看第二次的结果就可以了
从图中可以看出,"x"*1000比1000.times{ s = (s || "") + "x" }快得多
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X5.0