多執行緒的建立 兩種方式以及使用建議
多執行緒的建立
方式一、繼承於Thread類
步驟
- 1.建立一個繼承於 Thread類的子類
- 2.重寫 Thread 類階run()-ー>將此執行緒放行的操作宣告在run()中
- 3.建立 MyThread類的子類的物件
- 4.通過此物件調 start()
程式碼
//1.建立一個繼承於 Thread類的子類
class MyThread extends Thread{
//2.重寫 Thread 類階run()-ー>將此執行緒放行的操作宣告在run()中
@Override
public void run() {
for (int i = 0 ; i<10;i++){
System.out.println(Thread.currentThread().getName()+i);
}//輸出0-9的數
}
}
public class ThreadTest {
public static void main(String[] args) {
// 3.建立 MyThread類的子類的物件
MyThread t1 =new MyThread();
// 4.通過此物件調 start()
t1.start();
}
}
方式二、實現 Runnable介面
###步驟
- 1.建立一個實現了 Runnable介面的類
- 2.實現類去實現 Runnable中的抽象方法:run()
- 3.建立實現類的物件
- 4.將此物件作為引數傳遞到 Thread類的的構造器中,建立 Thread類的物件
- 5.通過 Thread 類的物件呼叫 start()
程式碼
//1.建立一個實現了 Runnable介面的類
class Thread2 implements Runnable {
//2.實現類去實現 Runnable中的抽象方法:run()
@Override
public void run() {
System.out.println(Thread.currentThread().getName() + 1);
}
}
public class CreatThread {
public static void main(String[] args) {
//3.建立實現類的物件
Thread2 t2 = new Thread2();
//4.將此物件作為引數傳遞到 Thread類的的構造器中,建立 Thread類的物件
Thread c1 = new Thread(t2);
//5.通過 Thread 類的物件呼叫 start():
// start的作用1⃣️啟動執行緒 2⃣️呼叫當前執行緒的run()-->呼叫了 Runnable型別的 target的run()
c1.start();
}
}
兩者的聯絡與使用技巧
開發中:優先選擇:實現Runnable介面的方式
原因:
- 1.實現的方式沒有類的單繼承的侷限性
- 2.實現的方式更適臺來處理多個執行緒有共享資料的情況。
聯絡: public class Thread implements Runnable
即Thread 也用Runnable 介面實現
相同點:兩種方式都需要重寫run(),將執行緒要執行的邏輯宣告在run()中。
相關文章
- 【java】【多執行緒】建立執行緒的兩種常用方式(2)Java執行緒
- java執行緒建立的兩種方式Java執行緒
- Java建立多執行緒的四種方式Java執行緒
- 執行緒的建立方式以及synchronize的使用執行緒
- 幾種簡潔建立執行緒的方式以及使用注意事項執行緒
- 多執行緒-多執行緒兩種方式的圖解比較及區別執行緒圖解
- 關於多執行緒的兩種實現方式執行緒
- Java建立多執行緒的幾種方式實現Java執行緒
- 建立執行緒的三種方式執行緒
- 執行緒建立的四種方式執行緒
- 執行緒池建立的幾種方式執行緒
- 【Python】python 多執行緒兩種實現方式Python執行緒
- 【併發技術01】傳統執行緒技術中建立執行緒的兩種方式執行緒
- 執行緒、開啟執行緒的兩種方式、執行緒下的Join方法、守護執行緒執行緒
- 執行緒池的五種狀態及建立執行緒池的幾種方式執行緒
- Java建立多執行緒的一種方法Java執行緒
- 執行緒以及多執行緒,多程式的選擇執行緒
- Java併發基礎01:揭祕傳統執行緒技術中建立執行緒的兩種方式Java執行緒
- Java實現多執行緒的三種方式Java執行緒
- android 建立多執行緒的幾種方法Android執行緒
- Java多執行緒13:讀寫鎖和兩種同步方式的對比Java執行緒
- jdk建立執行緒的方式JDK執行緒
- Java 中執行緒池的7種建立方式!Java執行緒
- Java基礎:執行緒的三種建立方式Java執行緒
- java--執行緒池--建立執行緒池的幾種方式與執行緒池操作詳解Java執行緒
- 執行緒和程式基礎以及多執行緒的基本使用(iOS)執行緒iOS
- MFC多執行緒的建立,包括工作執行緒和使用者介面執行緒執行緒
- c# 多執行緒的幾種方式 【轉載】C#執行緒
- Java併發(三)----建立執行緒的三種方式及檢視程式執行緒Java執行緒
- 【多執行緒高併發程式設計】二 實現多執行緒的幾種方式執行緒程式設計
- java的執行緒、建立執行緒的 3 種方式、靜態代理模式、Lambda表示式簡化執行緒Java執行緒模式
- 併發程式設計 建立執行緒的三種方式程式設計執行緒
- 【Java】執行緒的建立方式Java執行緒
- java 多執行緒之使用 interrupt 停止執行緒的幾種方法Java執行緒
- java執行緒實現的三種方式以及靜態代理Java執行緒
- 多執行緒------執行緒與程式/執行緒排程/建立執行緒執行緒
- iOS Swift 建立代理協議的多種方式iOSSwift協議
- Java中確保執行緒安全最常用的兩種方式Java執行緒