是不是使用了join 之后,使用了join 的线程运行结束之后才能让这个程序再次的运行下去。如果不是用join 那么这个线程在运行的时候和当前方法中的运行关系不大。所以就提前输出了战斗结束。

来源:3-1 Java线程停止错误的方法---stop

qq_毒鸡汤_lxWZ06

2016-12-16 21:51

是不是使用了join  之后,使用了join 的线程运行结束之后才能让这个程序再次的运行下去。如果不是用join 那么这个线程在运行的时候和当前方法中的运行关系不大。所以就提前输出了战斗结束。

写回答 关注

2回答

  • GeniusDSY
    2018-08-02 18:59:20

    join方法会使其他线程进行等待,使使用join方法的线程先运行,待该线程运行完毕之后,其他线程继续运行。

    而未使用join方法时,该线程与其他线程一致,等到其他线程运行结束后,该线程才可运行,故提前输出了战斗结束,然后才关键人物登场

    慕粉1548...

    你好,KeyPersonThread线程没有将keepRunning设置为false,也会自己停止吗?

    2018-10-26 22:03:07

    共 1 条回复 >

  • 终结者之魔鬼
    2016-12-17 10:02:02

    是的,子线程调用jion方法,就要等这个子线程先执行完

深入浅出Java多线程

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

186088 学习 · 464 问题

查看课程

相似问题