Thread 中的 join() 方法的作用是呼叫執行緒等待該執行緒執行完後,再繼續執行
Thread 中的 join() 方法的作用是呼叫執行緒等待該執行緒執行完後,再繼續執行
例子:
//
public class JoinTest {
//
public static void main(String[] a){
System.out.println("main thread start");
Thread t1 = new Thread(new Worker("worker-1"));
Thread t2 = new Thread(new Worker("worker-2"));
t1.start();
t2.start();
// 注意,要在 t1、t2 都啟動後,再執行 t1、t2 的 join
try{
t1.join();
}catch(InterruptedException e){
e.printStackTrace();
}
try{
t2.join();
}catch(InterruptedException e){
e.printStackTrace();
}
System.out.println("main thread end");
}
}
class Worker implements Runnable{
private String name;
public Worker(String name){
this.name = name;
}
//
public void run(){
for(int i = 0; i < 5; i++){
try {
Thread.sleep(1L);
}catch(InterruptedException e){
e.printStackTrace();
}
System.out.println(name);
}
}
}
參考: blog.csdn.net/wangshuminjava/article/details/86698916
相關文章
- 主執行緒等待所有其他執行緒執行完畢,然後再繼續執行主執行緒的邏輯,有以下幾種方法可以實現:執行緒
- Java多種方法實現等待所有子執行緒完成再繼續執行Java執行緒
- 執行緒、開啟執行緒的兩種方式、執行緒下的Join方法、守護執行緒執行緒
- Thread(執行緒)thread執行緒
- Java 中的執行緒 threadJava執行緒thread
- 執行緒間通訊_等待/通知之Thread.join()執行緒thread
- Java執行緒池核心執行緒用盡後為何優先排隊而不是繼續建立執行緒直至最大執行緒數?Java執行緒
- Java 執行緒池中的執行緒複用是如何實現的?Java執行緒
- 多執行緒(五)---執行緒的Yield方法執行緒
- 模擬主執行緒等待子執行緒的過程執行緒
- Java之 join 等待執行緒終止Java執行緒
- 多執行緒------執行緒與程式/執行緒排程/建立執行緒執行緒
- java執行緒執行緒休眠,sleep方法Java執行緒
- Thread執行緒控制之sleep、join、setDaemon方法的用處thread執行緒
- 【 Thread】建立執行緒的2種方法thread執行緒
- 保證執行緒在主執行緒執行執行緒
- 執行緒和執行緒池執行緒
- 多執行緒--執行緒管理執行緒
- 執行緒與多執行緒執行緒
- 執行緒 執行緒池 Task執行緒
- 多執行緒【執行緒池】執行緒
- Swift多執行緒:使用Thread進行多執行緒間通訊,協調子執行緒任務Swift執行緒thread
- join、volatile、newSingleThreadLatch 實現執行緒順序執行thread執行緒
- 多執行緒,到底該設定多少個執行緒?執行緒
- Java中命名執行器服務執行緒和執行緒池Java執行緒
- Java執行緒篇——執行緒的開啟Java執行緒
- 執行緒池建立執行緒的過程執行緒
- 【Java多執行緒】執行緒安全的集合Java執行緒
- Java多執行緒-執行緒池的使用Java執行緒
- [Java併發]執行緒的並行等待Java執行緒並行
- Java多執行緒-執行緒中止Java執行緒
- 多執行緒之初識執行緒執行緒
- 執行緒控制之休眠執行緒執行緒
- 多執行緒核心技術(1)-執行緒的基本方法執行緒
- Java 多執行緒基礎(六)執行緒等待與喚醒Java執行緒
- Win32執行緒——等待另一個執行緒結束Win32執行緒
- 【多執行緒總結(二)-執行緒安全與執行緒同步】執行緒
- 建立執行緒的4種方法 and 執行緒的生命週期執行緒