Re: join的問題
※ 引述《jackylau@kkcity.com.tw (帥哞哞)》之銘言:
: 關於以下程式:
: public static void main(String[] args) {
: JoinTest jt = new JoinTest();
: Thread t1 = jt.new th1();
: Thread t2 = jt.new th2();
: try{
: t1.start();
: t2.start();
: t1.join(); //等t1執行完再執行t2
我的想法是這樣 因為你現在這一段程式碼是放在main裡頭
執行上面t1.join()的應該就是main thread
所以呢 join到t1之後的應該是main thread而不是t2
我不確定我的想法是不是正確 還請其他高手指教
: //t2.join();
: }catch(InterruptedException e){}
: }
: }
: 這一個JoinTest類別會產生兩個執行序t1(列印1到200),t2(列印201到400),
: 我的預期結果是會從1列印到400,
: 因為我加了t1.join()一列,表示我希望在t1結束再執行t2,
: 這是我對join()方法的認知,
: 但程式結果產生不規則交互執行,請問是為啥呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.64.83.43
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 4 篇):