java 多线程join理解

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开始运行!");
    }
}


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容