更新時間:2022-11-28 10:35:38 來源:動力節點 瀏覽929次
在 Java 中,Thread 類包含多個用于為任務創建線程的構造函數和用于控制線程的方法。它是在 java.lang 默認包中聲明的預定義類。
Java中的每個線程都是由 Thread 類的唯一對象創建和控制的。thread 的一個對象控制著一個在JVM 下運行的線程。
Thread 類包含各種方法,可用于啟動、控制、中斷線程的執行,以及程序中許多其他與線程相關的活動。
Thread 類擴展了Java Object 類,它實現了 Runnable 接口。線程類的聲明如下:
公共類線程
擴展對象
實現 Runnable
請看下圖,它顯示了 Java Thread 類的類圖。
線程類的各種構造函數在java.lang包中定義,可用于創建線程對象如下:
1. Thread():這是一個基本的默認構造函數,沒有參數。它只是創建一個 Thread 類的對象。
2. Thread(String name) :它為線程創建一個具有指定名稱的新線程對象。
3. Thread(Runnable r):它通過將參數r作為對實現Runnable接口的類的對象的引用來創建線程對象。
4. Thread(Runnable r, String name):該構造函數通過傳遞兩個參數 r 和 name 創建一個線程對象。這里,變量 r 是實現 Runnable 接口的類對象的引用。
Thread類提供了各種靜態方法,如下:
1. currentThread(): currentThread() 返回當前執行線程的引用。由于這是一個靜態方法,所以我們可以直接使用類名來調用它。currentThread() 的一般語法如下:
句法:
公共靜態線程 currentThread()
2. sleep(): sleep() 方法使當前正在執行的線程休眠指定的毫秒數。此方法用于將當前線程暫停指定的時間量(以毫秒為單位)。
由于這個方法是靜態的,所以我們可以通過Thread類名來訪問它。該方法的一般語法如下:
句法:
public static void sleep(long milliseconds) 拋出 InterruptedException
重載版本的 sleep 方法的一般語法如下:
句法:
public static void sleep(long milliseconds, int nanoseconds) throw InterruptedException
sleep() 方法的重載版本用于以毫秒和納秒為單位暫停指定的時間段。這兩種方法都會拋出 InterruptedException,并且必須在 Java try-catch 塊中使用。
3. yield(): yield() 方法暫停當前線程的執行,并允許等待執行的具有相同或更高優先級的另一個線程執行。當前正在執行的線程放棄CPU的控制權。yield() 方法的一般形式如下:
句法:
公共靜態無效產量()
4. activeCount():該方法返回活動線程數。
句法:
公共靜態 int activeCount()
由于這個方法是靜態的,所以可以通過Thread類名來訪問。它不接受任何東西。
Thread類的實例方法如下:
1.start(): start()方法用于通過調用線程的run()方法來啟動線程的執行。JVM 在線程上調用 run() 方法。start() 方法的一般語法如下:
句法:
公共無效開始()
2.run(): run() 方法使線程進入運行狀態。它僅在 start() 方法執行后執行。一般語法如下:
句法:
公共無效運行()
3.getName():該方法返回線程的名稱。該方法的返回類型為字符串。這種方法的一般形式是:
句法:
公共最終字符串 getName()
4.setName():該方法用于設置線程的名稱。它接受一個 String 類型的參數。它什么都不返回。
句法:
public final void setName(字符串名稱)
5.getPriority():該方法返回線程的優先級。它以 1 到 10 之間的整數值的形式返回優先級。最大優先級為 10,最小優先級為 1,正常優先級為 5。
句法:
public final int getPriority() // 返回類型是一個整數。
6.setPriority():該方法用于設置線程的優先級。它接受一個整數值作為參數。一般語法如下:
句法:
公共最終無效 setPriority(int newPriority)
7.isAlive():該方法用于檢查線程是否存活。它返回一個布爾值(true 或 false),指示線程是否正在運行。isAlive() 方法是最終的和本機的。isAlive() 方法的一般語法如下:
句法:
public final native boolean isAlive()
8.join(): join()方法用于讓一個線程等待另一個線程終止它的進程。一般語法是
句法:
public final void join() throw InterruptedException
此方法拋出 InterruptedException 并且必須在 try-catch 塊中使用。
9.stop ():該方法用于停止線程。該方法的一般形式如下:
句法:
公共最終無效停止()
此方法既不接受任何內容也不返回任何內容。
10.suspend(): suspend()方法用于掛起或暫停一個線程。
句法:
公共最終無效暫停()
11.resume ():該方法用于恢復掛起的線程。它既不接受任何東西也不返回任何東西。
句法:
公共最終無效簡歷()
12.isDaemon():該方法用于檢查線程是否為守護線程。
句法:
公共最終布爾值 isDaemon()
以上就是關于“關于thread類的方法介紹”,在本站的Java多線程教程中還有更多有趣的多線程知識等你來學哦。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習