亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

如果把keepRunning=false放在 程咬金大殺四方之后 join怎么理解?

join是指讓其他線程等待當前線程終止。
如果

Thread k3 = new keyThread();//程咬金
k3.start();
k3.join();
隋軍.keepRunning = false;
民兵.keepRunning = false;

這么寫,隨軍沖鋒和民兵沖鋒會貫穿在程咬金的活動中間,看不出來join的效果啊

正在回答

2 回答

在A線程中調用了B線程的join方法,意思是直到線程A執行完畢后才會執行線程B,所以這里的join只對舞臺線程起作用。對起義軍和隋軍線程,程咬金的join方法根本不起作用。我試了下,把keepRunning設為false的語句注釋掉,發現即使加上chengyaojin.join(),這兩個線程也不會停止,會一直運行下去。

1 回復 有任何疑惑可以回復我~
#1

Goldberg 提問者

非常感謝!
2016-04-27 回復 有任何疑惑可以回復我~
#2

寒食君Talk

對答主的回答不太理解。“在A線程中調用了B線程的join方法,意思是直到線程A執行完畢后才會執行線程B”這句話。在Stage線程中調用了Cheng線程的join方法,意思是直到Stage執行完后才會執行Cheng線程? 是不是反了?還是我理解錯了?
2016-08-14 回復 有任何疑惑可以回復我~

我的理解是這里執行join方法的線程是stage線程,所以只有stage線程會停止,等待程咬金線程的完成,而因為stage線程的停止,keepRunning=false暫時不會執行,所以隋軍和農民起義軍兩個線程不會停止

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

舉報

0/150
提交
取消

如果把keepRunning=false放在 程咬金大殺四方之后 join怎么理解?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號