/*
时间:2015年3月11日21:41:23
测试join()
声明如下
void join()
等待该线程终止。
void join(long millis)
等待该线程终止的时间最长为 millis 毫秒。
void join(long millis, int nanos)
等待该线程终止的时间最长为 millis 毫秒 + nanos 纳秒。
老师讲解释为合并某个线程
时间:2015年3月11日21:41:23
测试join()
声明如下
void join()
等待该线程终止。
void join(long millis)
等待该线程终止的时间最长为 millis 毫秒。
void join(long millis, int nanos)
等待该线程终止的时间最长为 millis 毫秒 + nanos 纳秒。
老师讲解释为合并某个线程
*/
public class TestThread5 {
public static void main(String[] args) {
Runner5 r = new Runner5();
Thread t = new Thread(r);
t.start();
try {
t.join();//等待该线程终止。即等待t执行完
} catch (InterruptedException e) {
e.printStackTrace();
}
for (int i=0; i<15; i++) {
System.out.println("Main Thread i = " + i);
}
}
}
public class TestThread5 {
public static void main(String[] args) {
Runner5 r = new Runner5();
Thread t = new Thread(r);
t.start();
try {
t.join();//等待该线程终止。即等待t执行完
} catch (InterruptedException e) {
e.printStackTrace();
}
for (int i=0; i<15; i++) {
System.out.println("Main Thread i = " + i);
}
}
}
class Runner5 implements Runnable {
public void run() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
for (int j=0; j<15; j++) {
System.out.println("SubThread j = " + j);
}
}
}
/*
public void run() {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
for (int j=0; j<15; j++) {
System.out.println("SubThread j = " + j);
}
}
}
/*
D:\java\thread>javac TestThread5.java
D:\java\thread>java TestThread5
SubThread j = 0
SubThread j = 1
SubThread j = 2
SubThread j = 3
SubThread j = 4
SubThread j = 5
SubThread j = 6
SubThread j = 7
SubThread j = 8
SubThread j = 9
SubThread j = 10
SubThread j = 11
SubThread j = 12
SubThread j = 13
SubThread j = 14
Main Thread i = 0
Main Thread i = 1
Main Thread i = 2
Main Thread i = 3
Main Thread i = 4
Main Thread i = 5
Main Thread i = 6
Main Thread i = 7
Main Thread i = 8
Main Thread i = 9
Main Thread i = 10
Main Thread i = 11
Main Thread i = 12
Main Thread i = 13
Main Thread i = 14
SubThread j = 0
SubThread j = 1
SubThread j = 2
SubThread j = 3
SubThread j = 4
SubThread j = 5
SubThread j = 6
SubThread j = 7
SubThread j = 8
SubThread j = 9
SubThread j = 10
SubThread j = 11
SubThread j = 12
SubThread j = 13
SubThread j = 14
Main Thread i = 0
Main Thread i = 1
Main Thread i = 2
Main Thread i = 3
Main Thread i = 4
Main Thread i = 5
Main Thread i = 6
Main Thread i = 7
Main Thread i = 8
Main Thread i = 9
Main Thread i = 10
Main Thread i = 11
Main Thread i = 12
Main Thread i = 13
Main Thread i = 14
*/