多執行緒的四種建立方式

2021-10-07 14:45:48 字數 1711 閱讀 9623

方式1:

>繼承於thread類

> 建立乙個繼承於thead類的子類

>重寫thread類的run方法

>建立thread的物件

>通過該物件呼叫start()

class

aextends

thread}}

}//在main方法中直接呼叫start()方法;

public

static

void

main

(string[

] args)

方式2:

>建立乙個實現類實現runnable的介面

>實現類實現runnable的run()方法

>建立實現類的物件

>將該物件作為引數放到thread的構造器中建立thead物件

>通過thread類的物件呼叫start()方法;

class

bimplements

runnable}}

}//先要建立實現類的物件,然後把該物件放進thead()的構造器中,再呼叫start()方法

public

static

void

main

(string[

] args)

方式3:

>實現callable介面

>實現call方法,將執行緒要執行的操作宣告在call方法中

>建立callable介面實現類的物件

>將此callable介面實現了的物件作為引數傳到futuretask構造器中,建立futuretask的物件

>將futuretask的物件放到thread的構造器中並呼叫start方法

class

cimplements

callable

}return sum;}}

//先要建立實現類的物件,然後將該物件放到futuretask的構造器中生成futuretask的物件,再將這個物件放到thread的構造器中再呼叫start()方法

public

static

void

main

(string[

] args)

catch

(interruptedexception e)

catch

(executionexception e)

}

方式4:執行緒池

提前建立好多個執行緒,放入執行緒池中,使用時直接獲取,使用完放回池中,可以避免頻繁建立銷毀,實現重複利用。

好處:一、提高響應效率

二、降低資源消耗

三、便於執行緒管理

public

static

void

main

(string[

] args)

方式二和方式三的區別:

實現callable介面比實現runnable介面建立的功能更加強大

一、相比run()方法,callable的call方法可以帶有返回值,需要借助futuretask類,獲取返回結果。

二、可以丟擲異常,方便捕獲錯誤

三、支援泛型

多執行緒 四種建立方式

public class threadestablish1 start 主線程 for int i 0 i 100 i 1.建立乙個實現了thread類的子類 class subthread extends thread 注意點 如果自己手動呼叫run 方法,那麼就只是普通方法,沒有啟動多執行緒模式...

多執行緒 四種建立方式(一)

舉例 列印1 100的偶數 方法一 繼承thread類 public class testthread01 class numthread01 extends thread 方法二 實現runnable介面 建立執行緒的方式二 實現runnable介面 public class testthread...

多執行緒之四種建立方式

1前言 沒有前言 2 不得不提的乙個類 thread 2.1thread類的特性 2.2thread類的構造器 2.3thread類的有關方法 3建立執行緒的4中方式 3.1 學習建立執行緒的方式前必須注意的地方 3.2 方式一 繼承thread類 類1 public class mythread ...