1. 程式人生 > >Java--執行緒的先後執行順序控制

Java--執行緒的先後執行順序控制

說明

一般在多執行緒程式設計時,需要控制執行緒的先後執行順序,比如:主執行緒中寫了子執行緒t1,想要的效果是需要t1先執行,然後再執行接下來的主執行緒操作,但是預設的是主執行緒先執行,所以問題就出現了,執行結果與預期結果不一致。下面將介紹Thread的join()方法來解決這個問題。

方法

有兩個執行緒t1和t2,現在讓t1比t2先執行:

Thread t1 = new Thread(new Runnable() {
            @Override
            public void run() {
               Sysout.out.print("t1");
            }
        });
Thread t2 = new Thread(new Runnable() {
            @Override
            public void run() {
               try {
                    // 引入t1執行緒,等待t1執行緒執行完
                    t1.join();
                } catch (InterruptedException e) {  
                     e.printStackTrace();
                }
               Sysout.out.print("t2");
            }
        });
t2.start();
t1.start();
執行結果t1 t2
總結

多執行緒程式設計時,可通過join()方法控制執行緒的先後執行順序。