良好的面向对象程序执行慢的原因
1。作为计算的一部分,每个数字作为独立的对象都在堆上分配,实例化和垃圾收集也带来了额外的开销。
2。若作为矩阵元素的数字散布在堆中,消除了标准矩阵可以使用高速缓存的性能优点。
3。所有的数值操作都是通过方法调用相应的对象来执行的,这导致了象动态调度决定调用哪个方法这样的附加开销。
4。每个数字作为一个对象占用了更多的内存。
5。对象和方法调用阻止或限制一些常规的编辑器优化,例如能在FORTRAN和Lite OO版本中执行的代码移动。
但从另一个角度看,面向对象版本 的代码比较小,更容易读,更容易保存,这在产品环境中很重要的。
面向对象程序执行慢的原因
最新推荐文章于 2022-02-27 19:10:47 发布