我找不到任何关于这是否可能的信息,但这将是有用的,我可以在rails console中调用命令的方法,并使用任何度量来确定性能,但我主要考虑的是时间。
例如,我正在尝试找出其中哪一个更快:
[val2,val3,val4,val5,val6].find{|x| x != val1}
[val2,val3,val4,val5,val6].all?{|x| x == val1} 有这样的东西吗?
[val2,val3,val4,val5,val6].find{|x| x != val1}.performance发布于 2012-11-14 08:31:36
的确有!而且您甚至不需要Rails。从标准库中查看benchmark。
作为示例:
require 'benchmark'
puts Benchmark.measure { [val2,val3,val4,val5,val6].find{|x| x != val1} }
puts Benchmark.measure { [val2,val3,val4,val5,val6].all?{|x| x == val1} }输出的报告将显示(以秒为单位):
看起来像这样:
0.350000   0.010000   0.360000 (  0.436450)发布于 2015-10-13 16:55:42
这个宝石:https://github.com/igorkasyanchuk/benchmark_methods
不再有这样的代码:
t = Time.now
user.calculate_report
puts Time.now - t现在您可以执行以下操作:
benchmark :calculate_report # in class只需调用您的方法
user.calculate_reporthttps://stackoverflow.com/questions/13371267
复制相似问题