Java--執行緒的先後執行順序控制
阿新 • • 發佈:2019-01-06
說明
一般在多執行緒程式設計時,需要控制執行緒的先後執行順序,比如:主執行緒中寫了子執行緒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()方法控制執行緒的先後執行順序。