为了账号安全,请及时绑定邮箱和手机立即绑定

为什么停止军队线程的操作是被舞台线程执行的?

老师您好,我在AmmyRunnable中添加了一个线程停止的方法

public void stop() {
    if (keepRunning == true) {
        keepRunning = false;
    }
    System.out.println(Thread.currentThread().getName() + "发出停止进攻的命令!");
}

我发现程序输出的时候,发出停止进攻的命令是由舞台发出的,可是执行这个停止的方法不是分别由各自的军队线程去执行的吗?

我是不是可以这样理解,在多线程中,除了线程自己的run方法是由该线程自己执行的,该线程中的其它方法都是由主线程执行的?

正在回答

2 回答

第二个问题其实没什么意义,各个线程的分工合作全靠你来设计,没什么必然的规定。

0 回复 有任何疑惑可以回复我~

舞台的作用是告诉军队你得时间到了,该停了。至于真正停下来还是靠run里的控制

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
深入浅出Java多线程
  • 参与学习       186094    人
  • 解答问题       463    个

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

进入课程

为什么停止军队线程的操作是被舞台线程执行的?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信