时间:2021-05-20
本文实例讲述了Java之Thread的join方法。分享给大家供大家参考。具体实现方法如下:
join
public final void join()
throws InterruptedException等待该线程终止。
抛出:
InterruptedException - 如果任何线程中断了当前线程。当抛出该异常时,当前线程的中断状态 被清除。
下面的例子 通俗的讲,就是A调用join方法后,只有等A所在的线程不再运行,才会将进程分配出去
复制代码 代码如下:public class joinThread {
public static void main(String [] args) throws Exception{
ThreadTest5 t = new ThreadTest5();
Thread A = new Thread(t);
Thread B = new Thread(t);
A.start();
A.join(); //此处A调用 Thread的join方法,主函数将线程分配给A,当A运行完毕后,才会将线程释放出去。给其他的对象。
B.start();
for (int i = 1;i < 20;i++)
{
System.out.println("树上掉苹果"+ i);
}
System.out.println("苹果没了");
}
}
class ThreadTest5 implements Runnable
{
public void run()
{
for (int i = 1;i < 10;i++)
{
System.out.println(Thread.currentThread().getName()+"吃苹果"+(i));
}
}
}
运行结果为:
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
树上掉苹果1
树上掉苹果2
树上掉苹果3
树上掉苹果4
树上掉苹果5
树上掉苹果6
Thread-1吃苹果1
树上掉苹果7
Thread-1吃苹果2
树上掉苹果8
Thread-1吃苹果3
树上掉苹果9
Thread-1吃苹果4
树上掉苹果10
Thread-1吃苹果5
树上掉苹果11
Thread-1吃苹果6
Thread-1吃苹果7
Thread-1吃苹果8
Thread-1吃苹果9
树上掉苹果12
树上掉苹果13
树上掉苹果14
树上掉苹果15
树上掉苹果16
树上掉苹果17
树上掉苹果18
树上掉苹果19
苹果没了
Thread-0 值得就是A所在的线程,当A所在的线程运行完毕后,之后的线程由main主函数和B进程争夺。
希望本文所述对大家的Java程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文研究的主要是Java多线程中join方法的使用问题,以下文为具体实例。Thread的非静态方法join()让一个线程B“加入”到另外一个线程A的尾部。在A执
本文实例讲述了C#多线程之Thread中Thread.Join()函数用法。分享给大家供大家参考。具体分析如下:Thread.Join()在MSDN中的解释:B
join()介绍join()定义在Thread.java中。join()的作用:让“主线程”等待“子线程”结束之后才能继续运行。这句话可能有点晦涩,我们还是通过
Java多线程实例3种实现方法Java中的多线程有三种实现方式:1.继承Thread类,重写run方法。Thread本质上也是一个实现了Runnable的实例,
Java如何实现线程中断?通过调用Thread类的实例方法interrupt。如下:Threadthread=newThread(){@Overridepubl