在多线程程序中,如果在一个线程运行的过程中要用到另一个线程的运行结果,则可以进行线程的串行化处理
public final void join() throws InterruptedException
class MyRunner implements Runnable
{
public void run()
{
for(int i = 0; i < 10; i++)
System.out.println("子线程:" + i);
}
}
public class Rain {
public static void main(String []args)
{
MyRunner r = new MyRunner();
Thread t = new Thread(r);
t.start();
try
{
t.join(); //暂停当前正在执行t.join()的线程(主线程),直到t所对应的线程(子线程)终止之后,当前线程才会获得继续执行的机会
}
catch(InterruptedException e)
{
e.printStackTrace();
}
for(int i = 0; i < 10; i++)
System.out.println("主线程" + i);
}
}
注意:t.join()不是暂停t对象所对应的线程