问答详情
源自:2-4 Java线程-隋唐演义实战开发---军队

为什么加入join就能让stage线程早点结束?

有前面两个false就够了

怎么早了?没看出来

提问者:wshyzx 2016-09-12 20:04

个回答

  • 七塔
    2016-09-25 20:02:46
    已采纳

    Oh sorry,问题看错了,因为虽然那两个KeepRunning虽然设置了false,但是for循环里还在循环跳不到while的判断去,用join加入就直接从头开始,到while直接判断结束,不进入for循环,就到底了,直接输出战斗结束

  • 七塔
    2016-09-12 21:49:31

    舞台是一个线程,关键先生也是一个线程,也就是说舞台和关键先生会交替运行,就很有可能关键先生还没运行结束,舞台已经运行到后面了,所以用join()方法,使舞台停止,直到关键先生执行完,舞台接着运行。

    注:舞台是一个线程