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开始运行!");
}
}
java 多线程join理解
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 多线程通信方式 共享变量 创建全局变量,多个线程公用一个全局变量,方便简单。但是坏处就是共享变量容易出现数据竞争,...