Scala学习笔记番外篇(1)——程序性能优化_scala await.result 消耗资源-CSDN博客

网站介绍:文章浏览阅读137次。1.递归虽然代码更为简洁,但是要比普通的循环耗费更多的空间资源,在一层函数中需要执行下一层函数,要得到下一层函数返回的结果,根据这个结果再进行额外的计算然后返回结果,当前层函数才能退栈,故只有当执行完最后一层函数返回后,各层函数才能依次退栈,因此需要更多的函数栈帧,甚至有可能导致StackOverflow异常。如果函数返回的只有对自身的调用,而没有其它额外的计算,将计算直接放在函数参数当中,每一层将当前的计算结果当作参数传给下一层,那么一层函数就不需要等待下一层函数返回结果才能退栈,而是直接让下一层函数覆_scala await.result 消耗资源