最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

我的一些見解

public?class?Stage?extends?Thread?{

????public?void?run(){
????????ArmyRunnable?armyTaskOfSuiDynasty?=?new?ArmyRunnable();
????????ArmyRunnable?aryTaskOfRevolt?=?new?ArmyRunnable();

????????//使用Runnable對象接口創(chuàng)建線程
????????Thread?armyOfSuiDynasty?=?new?Thread(armyTaskOfSuiDynasty,"隋軍");
????????Thread?aryOfRevolt?=?new?Thread(aryTaskOfRevolt,"起義軍");

????????//啟動
????????armyOfSuiDynasty.start();
????????aryOfRevolt.start();
????????System.out.println("帷幕拉開,表演開始");
????????//舞臺線程休眠
????????try?{
????????????Thread.sleep(50);
????????}?catch?(InterruptedException?e)?{
????????????e.printStackTrace();
????????}

????????armyTaskOfSuiDynasty.keepRunning?=?false;
????????aryTaskOfRevolt.keepRunning?=?false;

????????try?{
????????????//主線程等待2個線程結(jié)束
????????????armyOfSuiDynasty.join();
????????????aryOfRevolt.join();
????????}?catch?(InterruptedException?e)?{
????????????e.printStackTrace();
????????}
????????System.out.println("關(guān)閉舞臺");
????}

????public?static?void?main(String[]?args)?{
????????Stage?stage?=?new?Stage();
????????stage.setName("舞臺");
????????stage.start();
????}
}

一開始看完后有點(diǎn)懵。仔細(xì)想了想,運(yùn)行了幾次,一點(diǎn)小理解。

首先,main方法啟動了舞臺線程,執(zhí)行run方法。

順著順序執(zhí)行到舞臺線程休眠(50毫秒),這個時候給了隋軍和起義軍這兩個線程使用處理器資源的時間(前期雖然有2個線程都已經(jīng)開始,但他們沒有處理器使用權(quán)),所以這兩個線程中的一個會首先執(zhí)行,因為for循環(huán)中有yield,所以處理器在50毫秒之內(nèi)被2個線程隨機(jī)使用,50毫秒以后,舞臺線程也加入處理器的爭取中,一旦爭取到了? 就會往下執(zhí)行,keepRunning設(shè)置為false,然后兩個線程執(zhí)行join方法。當(dāng)兩個線程都停止后,舞臺線程繼續(xù)執(zhí)行直到結(jié)束。

正在回答

2 回答

兄弟你牛啊,聽了你的解釋后,恍然大悟啊

0 回復(fù) 有任何疑惑可以回復(fù)我~

哦哦哦

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

我的一些見解

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號