相关疑难解决方法(0)

关于空间/时间的Groovy集合性能考虑因素

与普通的Java for循环相比,Groovys集合方法(关于空间(!)和时间)的性能如何?

例如,对于这个用例:

  • sum()vs for-loop with variable
  • each()vs for-loop with variable
  • inject()vs for-loop with variable
  • 使用临时集合收集()与for循环
  • findAll()与for循环的临时集合
  • find()vs for-loop with variable

那么,考虑到这些结果,是否建议在关键环境中使用for循环而不是Groovy-collection-methods(例如Grails-WebApp)?是否有关于Groovy/Grails性能(优化)的资源?


使用此GBench测试,我获得了以下CPU时间结果:

                 user  system      cpu     real

forLoop       2578777      67  2578844  2629592
forEachLoop   2027941      47  2027988  2054320
groovySum     3946137      91  3946228  3958705
groovyEach    4703000       0  4703000  4703000
groovyInject  4280792     108  4280900  4352287



import groovyx.gbench.BenchmarkBuilder

def testSize = 10000
def testSet = (0..testSize) as Set


def bm = new BenchmarkBuilder().run {

'forLoop' {
    def n = 0
    for(int i = 0; …
Run Code Online (Sandbox Code Playgroud)

java optimization performance grails groovy

7
推荐指数
1
解决办法
1273
查看次数

标签 统计

grails ×1

groovy ×1

java ×1

optimization ×1

performance ×1