Java之Thread的join方法實例
本文實例講述了Java之Thread的join方法。分享給大家供大家參考。具體實現(xiàn)方法如下:
join
public final void join()
throws InterruptedException等待該線程終止。
拋出:
InterruptedException - 如果任何線程中斷了當(dāng)前線程。當(dāng)拋出該異常時,當(dāng)前線程的中斷狀態(tài) 被清除。
下面的例子 通俗的講,就是A調(diào)用join方法后,只有等A所在的線程不再運行,才會將進程分配出去
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調(diào)用 Thread的join方法,主函數(shù)將線程分配給A,當(dāng)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));
}
}
}
運行結(jié)果為:
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所在的線程,當(dāng)A所在的線程運行完畢后,之后的線程由main主函數(shù)和B進程爭奪。
希望本文所述對大家的Java程序設(shè)計有所幫助。
相關(guān)文章
詳解SpringMVC重定向傳參數(shù)的實現(xiàn)
本篇文章主要介紹了詳解SpringMVC重定向傳參數(shù)的實現(xiàn),我們可以使用重定向的方式,改變?yōu)g覽器的地址欄,防止表單因為刷新重復(fù)提交。有興趣的可以了解一下。2017-01-01Java中PageHelper分頁后對list操作導(dǎo)致分頁無效
在項目中使用分頁插件的時候發(fā)現(xiàn)PageHelper插件失效了,本文就來介紹一下Java中PageHelper分頁后對list操作導(dǎo)致分頁無效的解決方法,感興趣的可以了解一下2021-05-05