美文网首页java
for(;;) 与 while(true)

for(;;) 与 while(true)

作者: Uning | 来源:发表于2019-08-23 15:07 被阅读0次

总结 for(;;) 比 while(true) 好

为啥:如下(底层完全不同)

“死循环”有两种写法:for(;;)和while(true),
两者有啥区别,为啥源码中多数是for( ; ; )这种形式的,

编译前 编译后

while (1);         mov eax,1  
                    test eax,eax 
                    je foo+23h
                    jmp foo+18h
for (;;);          jmp foo+23h   

对比之下,for (;;)指令少,不占用寄存器,而且没有判断跳转,比while (1)好。

也就是说两者在在宏观上完全一样的逻辑,但是底层完全不一样,for相对于来说更加简洁明了。

原文地址 https://yq.aliyun.com/articles/637728

相关文章

  • for(;;) 与 while(true)

    总结 for(;;) 比 while(true) 好 为啥:如下(底层完全不同) “死循环”有两种写法:for(;...

  • 解析Python3 中while true与 whlie 的区别

    最近会思考一个问题:python3 中 while 与 while true 有啥不区别 ? while True...

  • for(;;)与while(true)区别

    前言   在Java中 for(;;)和while(true)都是死循环,使用的效果都是一样的,但是我们都知道Ja...

  • 09流程控制

    if else for 循环 while 语句 util与while相反,条件返回true时跳出 case 跳出循...

  • for{;;}与while(true)的困惑

    最近在阅读JUC源码的时候,由于多线程并发时情况比较复杂,所以源码中经常出现一些无限循环用于等待确保或是某些目的的...

  • while 循环

    1、while 循环while True:print("我喜欢Python")注意:关键词True、False 要...

  • while(true) vs for(;;)

    while(true)和for(;;)到底谁快?test code 字节码执行命令:javap -verbose ...

  • While true: learn()

    专家系统:识别text决策树:SIFT(scale-invariant feature transform)per...

  • Futex 初学之 虚假唤醒

    用while 代替 if ,防止虚假唤醒。 while( valueneed to wait == true){ ...

  • js循环

    循环语句 while(条件){ 条件为true执行; } 列:while 循环 var a=1; while(a<...

网友评论

    本文标题:for(;;) 与 while(true)

    本文链接:https://www.haomeiwen.com/subject/srhtectx.html