在下面的代碼中,爲什麼主線程要等到子線程完成。爲什麼主線程會等待
Driver.java
public class Driver {
public static void main(String[] args) throws InterruptedException {
Thread t = new Thread(new ThreadRunner());
t.start();
}
}
ThreadRunner.java
public class ThreadRunner implements Runnable {
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("Child thread" + i);
}
}
}
在這裏,在驅動程序類調用 't.start()' 後,不應在程序退出?我沒有使用連接,但主線程仍在等待直到新運行的「ThreadRunner」運行正在運行。是因爲在java中,主線程(由main方法啓動)始終等待,直到所有線程都關閉?