實現多執行緒的兩種方式

2021-10-02 00:17:01 字數 2048 閱讀 2180

(1)runnable 是乙個介面,該介面中只包含了乙個run()方法。它的定義如下:

public inte***ce runnable
runnable的作用,實現多執行緒。我們可以定義乙個類a實現runnable介面;然後,通過new thread(new a())等方式新建執行緒。

(2)thread 是乙個類。thread本身就實現了runnable介面。它的宣告如下:

public  class thread implements runnable {}
(3)thread和runnable的異同點

①thread 和 runnable 的相同點:都是多執行緒的實現方式。

②thread 和 runnable 的不同點: thread 是類,而runnable是介面;thread本身是實現了runnable介面的類。我們知道「乙個類只能有乙個父類,但是卻能實現多個介面」,因此runnable具有更好的擴充套件性。 此外,runnable還可以用於「資源的共享」。即,多個執行緒都是基於某乙個runnable物件建立的,它們會共享runnable物件上的資源。

(1)thread實現多執行緒

class mythread extends thread

9 }

10 }

11 };

12 13 public class threadtest

23 }

結果

thread-0 ticket10

thread-1ticket10

thread-2 ticket10

thread-1 ticket9

thread-0 ticket9

thread-1 ticket8

thread-2 ticket9

thread-1 ticket7

thread-0 ticket8

thread-1 ticket6

thread-2 ticket8

thread-1 ticket5

thread-0 ticket7

thread-1ticket4

thread-2 ticket7

thread-1ticket3

thread-0 ticket6

thread-1 ticket2

thread-2 ticket6

thread-2 ticket5

thread-2 ticket4

thread-1 ticket1

thread-0 ticket5

thread-2 ticket3

thread-0 ticket4

thread-2 ticket2

thread-0 ticket3

thread-2 ticket1

thread-0 ticket2

thread-0 ticket1

(2)runnable的多執行緒示例

2 class mythread implements runnable

9 }

10 }

11 };

12 13 public class runnabletest

25 }

結果

thread-0 ticket10

thread-2 ticket8

thread-1 ticket9

thread-2 ticket6

thread-0 ticket7

thread-2 ticket4

thread-1 ticket5

thread-2 ticket2

thread-0 ticket3

thread-1 ticket1

參考鏈結

多執行緒兩種實現方式

public class testthread1 extends thread public static void main string args 執行結果如下 可見執行緒由cpu隨機排程的。public class testthread2 extends thread override pub...

實現多執行緒的兩種方式

一 什麼是執行緒?定義 執行緒是程序中的乙個執行單元,負責當前程序中程式的執行,乙個程序中至少有乙個執行緒。乙個程序中是可以有多個執行緒的,這個應用程式也可以稱之為多執行緒程式。簡而言之 乙個程式執行後至少有乙個程序,乙個程序中可以包含多個執行緒 二 怎麼實現多執行緒?下面的兩種方式婦孺皆知 1.繼...

實現多執行緒的兩種方式

1.建立類繼承thread類,重寫run public class mythread extends thread 2.測試public class test 1.建立類實現runnable介面,重寫run public class myrunnable implements runnable 2....