Java-- join源代碼測試

cwf8 11年前發布 | 3K 次閱讀 Java

public class JoinTest {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Thread t1 = new ThreadA();//利用多態實例化一個A線程
    Thread t2 = new ThreadB(t1);//利用多態實例化一個B線程
    t1.start();
    t2.start();
}

}

/繼承于Thread的子類/ class ThreadA extends Thread { public void run() { for (int i = 1; i <= 20; i++) { System.out.println(i + " ¥¥¥"); try { Thread.sleep(1000); } catch (InterruptedException e) { } } } }

/繼承于Thread的子類/ class ThreadB extends Thread { private Thread t;

public ThreadB() {
}

public ThreadB(Thread t) {
    this.t = t;
}

public void run() {
    for (int i = 1; i <= 20; i++) {
        System.out.println(i + "  ###");
        try {
            Thread.sleep(1000);
            if (i == 10) {
                t.join();// join 使這兩個線程進入串行狀態(也就是說t突然插了進來,必須等t執行完畢之后,才會讓B線程繼續執行)
            }
        } catch (InterruptedException e) {
        }
    }
}

}</pre>

 本文由用戶 cwf8 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!