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

军队线程没有没有停止

为什么舞台线程不休眠,军队线程也能进行下去呢 好奇怪,而且没看法停止军队线程

正在回答

2 回答

轮流运行,舞台线程只是会占用一部分其他线程的运行时,但不是全部占用,其他线程还是有机会运行的。

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

public class Stage extends Thread {

public void run() {


System.out.println("舞台线程");


try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}


System.out.println("大幕徐徐拉开");

try {

Thread.sleep(1000);

} catch (InterruptedException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}


ArmyOfSuiDynasty armyOfDynasty = new ArmyOfSuiDynasty("朝廷军");

ArmyOfSuiDynasty armyOfFamer = new ArmyOfSuiDynasty("农民军");

// 用Runnable接口创建线程

Thread armyTaskOfSuiDynasty = new Thread(armyOfDynasty, "朝廷军线程");

Thread armyTaskOfFamer = new Thread(armyOfFamer, "农民军线程");


// 启动线程,让军队开始作战

armyTaskOfSuiDynasty.start();

armyTaskOfFamer.start();


// //让主线程进入休眠状态,让出处理时间

// try {

//

// Thread.sleep(1);

// } catch (InterruptedException e) {

// // TODO Auto-generated catch block

// e.printStackTrace();

// }


// 将作战指令设为停止

armyOfDynasty.keepRunning = false;

armyOfFamer.keepRunning = false;

try {

armyTaskOfFamer.join();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}


public static void main(String[] args) {

Stage s = new Stage();

s.start();

}

}


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

举报

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

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

进入课程

军队线程没有没有停止

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