线程的join方法

        线程有join方法,当线程1调用线程2的join方法时,线程1必须等待线程2执行完毕,线程1才能继续往下执行。join方法主要用来将大问题分解成小问题,当小问题计算完成时,大问题才能继续往下执行,这时候我们就可以利用join方法了。下面演示了一下线程的join方法。

   

public class TestJoin {


	public static void main(String[] args) {
		
		for(int i =0;i<100;i++)
		{
			System.out.println(Thread.currentThread().getName()+"  "+i);
			if(i==20)
			{
				JoinThread jt=new JoinThread();
				jt.start();
				//主线程调用jt的join方法,主线程必须等待jt线程执行完才能继续执行
				try {
					jt.join();
				} catch (InterruptedException e) {
					e.printStackTrace();
				}
			}
		}

	}

}

class  JoinThread extends Thread
{

	@Override
	public void run() {
	   for(int i = 0;i<100;i++)
	   {
		   System.out.println(this.getName()+"  "+i);
	   }
	}
	 
}

  

输出结果:

 main  0
main  1
main  2
main  3
main  4
main  5
main  6
main  7
main  8
main  9
main  10
main  11
main  12
main  13
main  14
main  15
main  16
main  17
main  18
main  19
main  20
Thread-0  0
Thread-0  1
Thread-0  2
Thread-0  3
Thread-0  4
Thread-0  5
Thread-0  6
Thread-0  7
Thread-0  8
Thread-0  9
Thread-0  10
Thread-0  11
Thread-0  12
Thread-0  13
Thread-0  14
Thread-0  15
Thread-0  16
Thread-0  17
Thread-0  18
Thread-0  19
Thread-0  20
Thread-0  21
Thread-0  22
Thread-0  23
Thread-0  24
Thread-0  25
Thread-0  26
Thread-0  27
Thread-0  28
Thread-0  29
Thread-0  30
Thread-0  31
Thread-0  32
Thread-0  33
Thread-0  34
Thread-0  35
Thread-0  36
Thread-0  37
Thread-0  38
Thread-0  39
Thread-0  40
Thread-0  41
Thread-0  42
Thread-0  43
Thread-0  44
Thread-0  45
Thread-0  46
Thread-0  47
Thread-0  48
Thread-0  49
Thread-0  50
Thread-0  51
Thread-0  52
Thread-0  53
Thread-0  54
Thread-0  55
Thread-0  56
Thread-0  57
Thread-0  58
Thread-0  59
Thread-0  60
Thread-0  61
Thread-0  62
Thread-0  63
Thread-0  64
Thread-0  65
Thread-0  66
Thread-0  67
Thread-0  68
Thread-0  69
Thread-0  70
Thread-0  71
Thread-0  72
Thread-0  73
Thread-0  74
Thread-0  75
Thread-0  76
Thread-0  77
Thread-0  78
Thread-0  79
Thread-0  80
Thread-0  81
Thread-0  82
Thread-0  83
Thread-0  84
Thread-0  85
Thread-0  86
Thread-0  87
Thread-0  88
Thread-0  89
Thread-0  90
Thread-0  91
Thread-0  92
Thread-0  93
Thread-0  94
Thread-0  95
Thread-0  96
Thread-0  97
Thread-0  98
Thread-0  99
main  21
main  22
main  23
main  24
main  25
main  26
main  27
main  28
main  29
main  30
main  31
main  32
main  33
main  34
main  35
main  36
main  37
main  38
main  39
main  40
main  41
main  42
main  43
main  44
main  45
main  46
main  47
main  48
main  49
main  50
main  51
main  52
main  53
main  54
main  55
main  56
main  57
main  58
main  59
main  60
main  61
main  62
main  63
main  64
main  65
main  66
main  67
main  68
main  69
main  70
main  71
main  72
main  73
main  74
main  75
main  76
main  77
main  78
main  79
main  80
main  81
main  82
main  83
main  84
main  85
main  86
main  87
main  88
main  89
main  90
main  91
main  92
main  93
main  94
main  95
main  96
main  97
main  98
main  99

可以看到当线程0执行完毕后,主线程才能继续执行。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值