package day0228;
public class TestThreadPractice {
public static void main(String[] args) throws Exception{
Thread1 t1 = new Thread1(); //创建任务对象
Thread tt1 = new Thread(t1); //创建线程对象 创建线程方式1
Thread tt2 = new Thread(new Runnable(){ //创建线程方式2 使用匿名内部类的方式
@Override
public void run() {
System.out.println("tt2运行了");
}});
tt1.start();
tt2.start();
// tt1.join(); //阻塞主线程 等子线程执行完后再执行主线程
System.out.println("hello"); //join的存在不会阻塞子线程
tt2.join(); //两个join方法 其实阻塞主线程的只需要一个join即可
System.out.println("主线程开始运行");
}
}
class Thread1 implements Runnable{ //创建一个任务
@Override
public void run() {
System.out.println("Thread1开始运行!");
}
}
网友评论