一些丑陋,不切实际的代码(微基准测试的内容):
while (counter < 10000000) { // work for (int j = 0; j < 100; j++) counter++; counter -= 99; }因此,这是做什么的,应该运行多快。
内部循环将计数器递增100次,然后将计数器递减99。因此递增1。注意counter是外部类的成员变量,因此存在一些开销。然后运行10,000,000次。因此,内部循环运行了1,000,000,000次。
使用访问器方法的循环,称为25个循环。在1 GHz下有1,000,000,000次,给出25s。
嘿,我们预测了 缓慢的 时间。慢的时间很快。最快的时间是基准测试以某种方式打破之后-迭代2.5个周期?使用-
server,您可能会发现它变得更加愚蠢。


![第一次Java循环运行缓慢,为什么?[Sun HotSpot 1.5,sparc] 第一次Java循环运行缓慢,为什么?[Sun HotSpot 1.5,sparc]](http://www.mshxw.com/aiimages/31/498504.png)
