1. 程式人生 > >java join用法

java join用法

一、使用方式。

join是Thread類的一個方法,啟動執行緒後直接呼叫,例如:

?
1 Thread t = new AThread(); t.start(); t.join();
回到頂部

二、為什麼要用join()方法

在很多情況下,主執行緒生成並起動了子執行緒,如果子執行緒裡要進行大量的耗時的運算,主執行緒往往將於子執行緒之前結束,但是如果主執行緒處理完其他的事務後,需要用到子執行緒的處理結果,也就是主執行緒需要等待子執行緒執行完成之後再結束,這個時候就要用到join()方法了。

回到頂部

三、join方法的作用

在JDk的API裡對於join()方法是:

回到頂部

join

public final void join() throws InterruptedException Waits for this thread to die. Throws: InterruptedException  - if any thread has interrupted the current thread. The interrupted status of the current thread is cleared when this exception is thrown.

即join()的作用是:“等待該執行緒終止”,這裡需要理解的就是該執行緒是指的主執行緒等待子執行緒的終止。也就是在子執行緒呼叫了join()方法後面的程式碼,只有等到子執行緒結束了才能執行。

回到頂部

四、用例項來理解

寫一個簡單的例子來看一下join()的用法:

1.AThread 類

  1. BThread類

  2. TestDemo 類

    ?
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 class BThread extends Thread { public BThread() { super("[BThread] Thread"); }; public void run() { String threadName = Thread.currentThread().getName(); System.out.println(threadName + " start."

    相關推薦

    java join用法

    一、使用方式。 join是Thread類的一個方法,啟動執行緒後直接呼叫,例如: ? 1 Thread t = new AThread(); t.start(); t.join();

    java進階 執行緒池 join用法總結:thread4.join();方法,就表明thread4.join();這個執行緒受到貴客待遇,直到這個執行緒執行完,被插入這個方法的載體執行緒才可以執行。

    那個執行緒呼叫join 舉例 thread4.join();方法,就表明thread4.join();這個執行緒受到貴客待遇,直到這個執行緒執行完,被插入這個方法的載體執行緒才可以執行。 package javajinjie.char29.threadpool; pu

    MySQL join 用法

    highlight table sql 合成 join sel lec limit mysq select column1, column2 from TABLE1 join TABLE2 on 條件 # select * from table1 join table2

    Java習慣用法總結

    保持 lock 學習 util catch %20 bject 負數 rac 在Java編程中,有些知識 並不能僅通過語言規範或者標準API文檔就能學到的。在本文中,我會盡量收集一些最常用的習慣用法,特別是很難猜到的用法。(Joshua Bloch的《Effective J

    java :instanceof用法

    interface println false bsp 繼承 attr mask csdn 技術分享 Java中的instanceof是用來判斷某個實例是不是某個類的實例。 例如:A instanceof B (A為某個實例,B為某個類名) 如果A為B的實例,則:(A in

    JFileChooser和FileFilter的使用,以及Java RandomAccessFile用法

    選擇 沒有 定義 相關 lte inpu 概念 獨立 文件 今天學習前輩的一個p2p下載的源代碼,其中遇見了兩個小問題,上網進行了百度,找到了答案,隨手記錄一下,以便於以後翻看。 1.首先自定義了一個文件下載的主界面,包括了創建任務、暫停任務、繼續任務、刪除任務,點擊創建任

    Delete from join 用法

    16px div -s span style left join pre 用法 not delete (別名) from tblA (別名) left join tblb (別名) on。。。用法 1、創建使用的表及數據 CREATE TABLE YSHA

    【轉載】Java DecimalFormat 用法

    最快 public oid get div 科學計數 科學 符號 一個 轉載只供個人學習參考,以下查看請前往原出處:http://blog.csdn.net/wangchangshuai0010/article/details/8577982 我們經常要將數字進行格式化,比

    超詳細mysql left join,right join,inner join用法分析

    語法 mem 比較 詳細 第一個 a20 object 發生 例子 下面是例子分析表A記錄如下: aID aNum 1 a20050111 2 a20050112 3 a20050113 4

    java .net 用法差異

    net 字符串 sub ava hello 開始 java nbsp substr .net Substring(開始位置,取幾位字符串) ("hello").Substring(2,2)=ll java substring(開始位置,結束位置) ("hello

    Python中join函數和os.path.join用法

    post () 參數說明 python class log join 絕對路徑 返回 Python中有join和os.path.join()兩個函數,具體作用如下: join:連接字符串數組。將字符串、元組、列表中的元素以指定的字符(分隔符)連接生成一個新的字符串 os.p

    java join 方法的使用

    stat con In 使用 pre pri print err tro 在很多情況下,主線程創建並啟動子線程,如果子線程中要進行大量的耗時運算,主線程往往將早於子線程結束之前結束。這時,如果主線程想等待子線程執行完成之後再結束,比如子線程處理一個數據,主線程要取得這個數據

    java join使用

    比如main是主執行緒,那麼如果在main裡面啟動了A執行緒的join方法,那麼主執行緒即等待A執行緒執行結束才執行。 主執行緒要是呼叫join方法,那麼該執行緒將一直等待。因為是自己等待自己。     join()方法還有帶超時限制的過載版本。 例如t.join

    JAVA----關鍵字用法

    this 使用注意: 1.代表所屬函式的呼叫者物件。 2.如果存在同名的成員變數和區域性變數時,在方法內部預設是訪問區域性變數(java編譯器採用“就近原則”),但可以用this訪問成員變數。 3.在一個建構函式中可以訪問另一個建構函式,但是呼叫語句必須在該建構函式的第一個語句,

    Java DecimalFormat 用法(數字格式化)

    我們經常要將數字進行格式化,比如取2位小數,這是最常見的。Java 提供 DecimalFormat 類,幫你用最快的速度將數字格式化為你需要的樣子。下面是常用的例子: import java.text.DecimalFormat; public class Test{ pu

    Mysql中Join用法及優化

    Join的幾種型別   笛卡爾積(交叉連線)  如果A表有n條記錄,B表有m條記錄,笛卡爾積產生的結果就會產生n*m條記錄。在MySQL中可以為CROSS JOIN或者省略CROSS即JOIN如 SELECT * FROM table1 CROSS JOIN table2&

    java compareTo() 用法注意點

       compareTo就是比較兩個值,如果前者大於後者,返回1,等於返回0,小於返回-1,我下面給出了例子,由於比較的變數我用的是int,int型可以直接比較,所以沒有用到compareTo比較,如果宣告的是Date、String、Integer、或者其他的,可以直接使用compareTo比較,

    Python 入門:字串連線及join用法

    原文解釋如下: >>> a = 'abc' >>> help(a.join) Help on built-in function join: join(...) method of builtins.str insta

    string.join用法 C# String.Join用法

    C# String.Join用法 String.Join(String, String[]) 在指定 String 陣列的每個元素之間串聯指定的分隔符 String,從而產生單個串聯的字串 例如: string [] array={abc,def,ghi};string a = strin

    Mongodb Java count 用法記錄(巢狀欄位也是可以的)

    當你需要確定某個欄位等於“xxxxx”的記錄在mongodb裡面到底有多少條的時候,就可以使用這個count。 我這使用的是 spring-data-mongodb-1.5.0 來訪問資料庫的。本以為