将keepRunning=false后线程是怎么继续运行的呢,并没有在其他地方重新设置为true啊

来源:2-4 Java线程-隋唐演义实战开发---军队

簸箕粄

2016-09-08 22:28

将keepRunning=false后线程是怎么继续运行的呢,并没有在其他地方重新设置为true啊

这样while循环不是不成立吗,为什么还会执行里面的for循环

写回答 关注

2回答

  • 慕粉3610080
    2016-09-08 23:04:57
    已采纳

    当keepRunning=true,while语句一直在执行;当将keepRunning=false,不满足while的循环条件,但并不会马上终止while循环,while里面的for循环还是会执行的,当while里面的程序运行完后,跳出while循环,不再进入。



    簸箕粄 回复簸箕粄

    额,我搞懂了,在设置false之前已经跑了一段时间了

    2016-09-13 20:37:42

    共 4 条回复 >

  • l_yanlei
    2016-09-08 22:46:54

    因为原来wihle()里就是ture,把keepRunning设置为false是为了停止while循环,结束线程。

深入浅出Java多线程

带你一起深入浅出多线程,掌握基础,展望进阶路线

186088 学习 · 464 问题

查看课程

相似问题