Java中一个空体的循环 [英] A loop with an empty body in Java

查看:199
本文介绍了Java中一个空体的循环的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  void waiter( ){
for(int i = 0; i <20000; i ++);



$ b $ p
$ b

这会导致停顿一段时间,还是会被JVM优化忽略? / p>

解决方案

它将在JIT运行几次之后进行优化。 JVM在第一次运行时需要检查是否正在增加的值 i 没有被使用。



检查这篇文章:

Java:一个空循环使用多少时间?


During bug fixing in very old project I've faced with strange method, it looks like this:

   void waiter() {
        for (int i = 0; i < 20000; i++) ;
    }

Does it cause halting some time or it will be omitted by JVM optimization?

解决方案

It will be optimized after few runs by JIT. The JVM , at the first run, needs to check if the value if i that is being incremented is not being used anywhere.

Check this article as well :

Java: how much time does an empty loop use?

这篇关于Java中一个空体的循环的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆