标签:一个 font 字符串 strong sof span 性能 rri 开发
如果你正在开发一个低延迟的交易程序,你真正想要在延迟方面的竞争,然后BigDecimal
是不适合你,它是那样简单。在微秒的情况下,对象创建和任何十进制数学就太昂贵了。
我认为,对于大多情况下,使用BigDecimal
是想都不用想,因为它会对应用程序的性能一点可见影响。
在作出交易决定延迟关键系统,任何不可预知的垃圾收集暂停是完全乱了,大量短命的BigDecimal对象会给GC带来压力,并导致CMS收集器中更大的Stop-The-World暂停,他们不一定在适当的时候延迟5毫秒可能会花费你很多钱。希望大型系统是以非OOP风格编写的,很少或根本没有使用某些实体字符串(代码等)。
你一定会需要使用double
(甚至float
),并采取命中精度。 - 这绝对是要避免的!
使用 bigdecimal 和double 计算 速度相差84倍(自我测试类测试) 。用于计算的算法 速度自然就慢了下来。
如果对于精度要求不高,当然用 double直接算了。
如果对精度要求高的话 只能 使用 bigdecimal 。
标签:一个 font 字符串 strong sof span 性能 rri 开发
原文地址:https://www.cnblogs.com/springwater/p/14688209.html