我用Java编写了一个小程序,该程序对数百万个随机数进行除法运算,并计算在运行不同OS的同一台计算机上进行除法运算的平均时间.运行该程序后,我发现,在Windows上,除法运算平均花费1.6 * 10 ^ -5 ms,而在Linux(Ubuntu 12.04)上,它花费的时间减少了近8倍,即3.2 * 10 ^ -6 ms.我不确定为什么Java程序可以在Ubuntu而不是Windows上更快地运行.只是司机的事吗?还是在Ubuntu上对算术运算进行了更优化?
解决方法:
实际的计算是由处理器完成的,它完全独立于操作系统.
此外,Java程序在虚拟Java机器中运行.
也许您在Windows上运行的线程数量更多,因此该程序获得了更少的处理器时间.