java中线程的启动有两种方式:
class T extends Thread{ String name; public T(String n){ name=n; } public void run() { try { for (int i = 0; i < 2; i++) { System.out.println("-------"+name); } } catch (Exception e) {} } } class T1 implements Runnable{ String name; public T1(String n){ name=n; } @Override public void run() { try { for (int i = 0; i < 2; i++) { System.out.println("-------"+name); } } catch (Exception e) {} } } 启动: public class Join_Thread { public static void main(String[] args) { T j1=new T("J1"); j1.start(); Thread t3=new Thread(new T1("T_Runable")); t3.start(); System.out.println("Thred End!!"); } } |
java中的join方法:
public class Join_Thread {
public static void main(String[] args) {
T j1=new T("J1");
j1.start();
try {
j1.join();
} catch (Exception e) {}
T j2=new T("J2");
j2.start();
try {
j2.join();
} catch (Exception e) { }
System.out.println("Join Thred End!!");
}
}
join();//等待该线程终止。
join(long millis);//等待该线程终止的时间最长为 millis 毫秒。
join(long millis,int nanos);//等待该线程终止的时间最长为 millis 毫秒 + nanos 纳秒。