java多線程學習之使用join()方法實現線程插隊

package learn.thread;

/*
 * join() 線程插隊方法
 */
public class Demo11 {

    public static int i = 0;

    public static void main(String[] args) {
        Thread t1 = new Thread() {

            @Override
            public void run() {
                System.out.println("線程1啓動");
                i += 5;
                System.out.println("線程1完成任務退出");

            }

        };
        t1.start();
        try {
            // 讓t1插隊2秒,如果2秒後t1沒執行完,則main線程繼續執行
            t1.join(2000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        //不然t1線程插隊執行,i爲0,插隊後mian線程拿到t1線程的結果爲 5
        System.out.println("i的值爲: " + i);

    }

}
// 線程1啓動
// 線程1完成任務退出
// i的值爲: 5
發佈了49 篇原創文章 · 獲贊 4 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章